Skip to content

Commit

Permalink
Merge pull request #387 from android/dev_alpha12
Browse files Browse the repository at this point in the history
[All] Update to Compose 1.0.0-alpha12
  • Loading branch information
chrisbanes authored Feb 11, 2021
2 parents 46a9ebf + cdd5f9b commit 23fef00
Show file tree
Hide file tree
Showing 145 changed files with 1,079 additions and 1,179 deletions.
7 changes: 6 additions & 1 deletion Crane/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -108,19 +108,24 @@ dependencies {
implementation Libs.GoogleMaps.maps
implementation Libs.GoogleMaps.mapsKtx

implementation Libs.Accompanist.coil
implementation Libs.AndroidX.Activity.activityCompose
implementation Libs.AndroidX.Compose.runtime
implementation Libs.AndroidX.Compose.runtimeLivedata
implementation Libs.AndroidX.Compose.foundation
implementation Libs.AndroidX.Compose.material
implementation Libs.AndroidX.Compose.layout
implementation Libs.AndroidX.Compose.animation
implementation Libs.AndroidX.Compose.tooling
implementation Libs.Accompanist.coil
implementation Libs.AndroidX.Lifecycle.viewModelCompose

implementation Libs.AndroidX.Lifecycle.viewModelKtx
implementation Libs.Hilt.android
kapt Libs.Hilt.compiler

// FIXME: only needed for Compose alpha12
androidTestImplementation Libs.AndroidX.Activity.activityCompose

androidTestImplementation Libs.JUnit.junit
androidTestImplementation Libs.AndroidX.Test.runner
androidTestImplementation Libs.AndroidX.Test.espressoCore
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import androidx.compose.samples.crane.calendar.model.DaySelectedStatus.Selected
import androidx.compose.samples.crane.data.DatesRepository
import androidx.compose.samples.crane.ui.CraneTheme
import androidx.compose.ui.test.SemanticsMatcher
import androidx.compose.ui.test.assertLabelEquals
import androidx.compose.ui.test.assertContentDescriptionEquals
import androidx.compose.ui.test.junit4.ComposeTestRule
import androidx.compose.ui.test.junit4.createAndroidComposeRule
import androidx.compose.ui.test.onNodeWithContentDescription
Expand Down Expand Up @@ -80,29 +80,29 @@ class CalendarTest {
composeTestRule.onNodeWithContentDescription("January 3").assertExists()

val datesNoSelected = composeTestRule.onDateNodes(NoSelected)
datesNoSelected[0].assertLabelEquals("January 1")
datesNoSelected[1].assertLabelEquals("January 3")
datesNoSelected[0].assertContentDescriptionEquals("January 1")
datesNoSelected[1].assertContentDescriptionEquals("January 3")

composeTestRule.onDateNode(FirstLastDay).assertLabelEquals("January 2")
composeTestRule.onDateNode(FirstLastDay).assertContentDescriptionEquals("January 2")
}

@Test
fun twoDaysSelected() {
composeTestRule.onNodeWithContentDescription("January 2").assertExists().performClick()

val datesNoSelectedOneClick = composeTestRule.onDateNodes(NoSelected)
datesNoSelectedOneClick[0].assertLabelEquals("January 1")
datesNoSelectedOneClick[1].assertLabelEquals("January 3")
datesNoSelectedOneClick[0].assertContentDescriptionEquals("January 1")
datesNoSelectedOneClick[1].assertContentDescriptionEquals("January 3")

composeTestRule.onNodeWithContentDescription("January 4").assertExists().performClick()

composeTestRule.onDateNode(FirstDay).assertLabelEquals("January 2")
composeTestRule.onDateNode(Selected).assertLabelEquals("January 3")
composeTestRule.onDateNode(LastDay).assertLabelEquals("January 4")
composeTestRule.onDateNode(FirstDay).assertContentDescriptionEquals("January 2")
composeTestRule.onDateNode(Selected).assertContentDescriptionEquals("January 3")
composeTestRule.onDateNode(LastDay).assertContentDescriptionEquals("January 4")

val datesNoSelected = composeTestRule.onDateNodes(NoSelected)
datesNoSelected[0].assertLabelEquals("January 1")
datesNoSelected[1].assertLabelEquals("January 5")
datesNoSelected[0].assertContentDescriptionEquals("January 1")
datesNoSelected[1].assertContentDescriptionEquals("January 5")
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.preferredSize
import androidx.compose.foundation.layout.preferredWidth
import androidx.compose.foundation.text.BasicTextField
import androidx.compose.material.AmbientContentColor
import androidx.compose.material.Icon
import androidx.compose.material.LocalContentColor
import androidx.compose.material.MaterialTheme
import androidx.compose.material.Surface
import androidx.compose.material.Text
Expand All @@ -39,7 +39,7 @@ import androidx.compose.samples.crane.ui.captionTextStyle
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.input.TextFieldValue
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
Expand All @@ -63,7 +63,7 @@ fun CraneUserInput(
modifier: Modifier = Modifier,
caption: String? = null,
@DrawableRes vectorImageId: Int? = null,
tint: Color = AmbientContentColor.current
tint: Color = LocalContentColor.current
) {
CraneBaseUserInput(
modifier = modifier,
Expand Down Expand Up @@ -100,11 +100,11 @@ fun CraneEditableUserInput(
if (!isHint()) onInputChanged(textFieldState.text)
},
textStyle = if (isHint()) {
captionTextStyle.copy(color = AmbientContentColor.current)
captionTextStyle.copy(color = LocalContentColor.current)
} else {
MaterialTheme.typography.body1.copy(color = AmbientContentColor.current)
MaterialTheme.typography.body1.copy(color = LocalContentColor.current)
},
cursorColor = AmbientContentColor.current
cursorColor = LocalContentColor.current
)
}
}
Expand All @@ -116,15 +116,15 @@ private fun CraneBaseUserInput(
@DrawableRes vectorImageId: Int? = null,
showCaption: () -> Boolean = { true },
tintIcon: () -> Boolean,
tint: Color = AmbientContentColor.current,
tint: Color = LocalContentColor.current,
content: @Composable () -> Unit
) {
Surface(modifier = modifier, color = MaterialTheme.colors.primaryVariant) {
Row(Modifier.padding(all = 12.dp)) {
if (vectorImageId != null) {
Icon(
modifier = Modifier.preferredSize(24.dp, 24.dp),
imageVector = vectorResource(id = vectorImageId),
painter = painterResource(id = vectorImageId),
tint = if (tintIcon()) tint else Color(0x80FFFFFF),
contentDescription = null
)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@ import androidx.compose.runtime.Composable
import androidx.compose.samples.crane.R
import androidx.compose.samples.crane.ui.CraneTheme
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp

Expand All @@ -43,7 +43,7 @@ fun CraneDrawer(modifier: Modifier = Modifier) {
.padding(start = 24.dp, top = 48.dp)
) {
Image(
imageVector = vectorResource(R.drawable.ic_crane_drawer),
painter = painterResource(R.drawable.ic_crane_drawer),
contentDescription = stringResource(R.string.cd_drawer)
)
for (screen in screens) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,9 @@ import androidx.compose.samples.crane.home.CraneScreen
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.AmbientConfiguration
import androidx.compose.ui.platform.LocalConfiguration
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.unit.dp
import androidx.core.os.ConfigurationCompat

Expand All @@ -55,12 +55,12 @@ fun CraneTabBar(
modifier = Modifier
.padding(top = 8.dp)
.clickable(onClick = onMenuClicked),
imageVector = vectorResource(id = R.drawable.ic_menu),
painter = painterResource(id = R.drawable.ic_menu),
contentDescription = stringResource(id = R.string.cd_menu)
)
Spacer(Modifier.preferredWidth(8.dp))
Image(
imageVector = vectorResource(id = R.drawable.ic_crane_logo),
painter = painterResource(id = R.drawable.ic_crane_logo),
contentDescription = null
)
}
Expand Down Expand Up @@ -105,7 +105,7 @@ fun CraneTabs(
Text(
modifier = textModifier,
text = title.toUpperCase(
ConfigurationCompat.getLocales(AmbientConfiguration.current)[0]
ConfigurationCompat.getLocales(LocalConfiguration.current)[0]
)
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.unit.dp
import dev.chrisbanes.accompanist.coil.CoilImage

Expand Down Expand Up @@ -102,7 +102,7 @@ private fun ExploreItem(
Box(Modifier.fillMaxSize()) {
Image(
modifier = Modifier.preferredSize(36.dp).align(Alignment.Center),
imageVector = vectorResource(id = R.drawable.ic_crane_logo),
painter = painterResource(id = R.drawable.ic_crane_logo),
contentDescription = null
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import android.content.Context
import android.content.Intent
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.Image
import androidx.compose.foundation.layout.Column
import androidx.compose.material.IconButton
Expand All @@ -34,10 +35,9 @@ import androidx.compose.samples.crane.calendar.model.CalendarDay
import androidx.compose.samples.crane.calendar.model.CalendarMonth
import androidx.compose.samples.crane.calendar.model.DaySelected
import androidx.compose.samples.crane.data.CalendarYear
import androidx.compose.ui.platform.setContent
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.viewinterop.viewModel
import androidx.lifecycle.viewmodel.compose.viewModel
import dagger.hilt.android.AndroidEntryPoint

fun launchCalendarActivity(context: Context) {
Expand Down Expand Up @@ -97,7 +97,7 @@ private fun CalendarContent(
navigationIcon = {
IconButton(onClick = { onBackPressed() }) {
Image(
imageVector = vectorResource(R.drawable.ic_back),
painter = painterResource(R.drawable.ic_back),
contentDescription = stringResource(R.string.cd_back)
)
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import android.content.Context
import android.content.Intent
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.annotation.VisibleForTesting
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column
Expand All @@ -34,19 +35,19 @@ import androidx.compose.material.MaterialTheme
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberCoroutineScope
import androidx.compose.runtime.savedinstancestate.savedInstanceState
import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.runtime.setValue
import androidx.compose.samples.crane.base.CraneScaffold
import androidx.compose.samples.crane.base.Result
import androidx.compose.samples.crane.data.ExploreModel
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.setContent
import androidx.compose.ui.unit.dp
import androidx.compose.ui.viewinterop.AndroidView
import androidx.compose.ui.viewinterop.viewModel
import androidx.lifecycle.viewmodel.compose.viewModel
import com.google.android.libraries.maps.CameraUpdateFactory
import com.google.android.libraries.maps.MapView
import com.google.android.libraries.maps.model.LatLng
Expand Down Expand Up @@ -152,7 +153,7 @@ private fun MapViewContainer(
latitude: String,
longitude: String
) {
var zoom by savedInstanceState { InitialZoom }
var zoom by rememberSaveable { mutableStateOf(InitialZoom) }
val coroutineScope = rememberCoroutineScope()

ZoomControls(zoom) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ import androidx.compose.runtime.Composable
import androidx.compose.runtime.DisposableEffect
import androidx.compose.runtime.remember
import androidx.compose.samples.crane.R
import androidx.compose.ui.platform.AmbientContext
import androidx.compose.ui.platform.AmbientLifecycleOwner
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.platform.LocalLifecycleOwner
import androidx.lifecycle.Lifecycle
import androidx.lifecycle.LifecycleEventObserver
import com.google.android.libraries.maps.GoogleMap
Expand All @@ -34,7 +34,7 @@ import com.google.android.libraries.maps.MapView
*/
@Composable
fun rememberMapViewWithLifecycle(): MapView {
val context = AmbientContext.current
val context = LocalContext.current
val mapView = remember {
MapView(context).apply {
id = R.id.map
Expand All @@ -43,7 +43,7 @@ fun rememberMapViewWithLifecycle(): MapView {

// Makes MapView follow the lifecycle of this composable
val lifecycleObserver = rememberMapLifecycleObserver(mapView)
val lifecycle = AmbientLifecycleOwner.current.lifecycle
val lifecycle = LocalLifecycleOwner.current.lifecycle
DisposableEffect(lifecycle) {
lifecycle.addObserver(lifecycleObserver)
onDispose {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ import androidx.compose.samples.crane.base.ExploreSection
import androidx.compose.samples.crane.data.ExploreModel
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.viewinterop.viewModel
import androidx.lifecycle.viewmodel.compose.viewModel

typealias OnExploreItemClicked = (ExploreModel) -> Unit

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import androidx.compose.runtime.rememberUpdatedState
import androidx.compose.samples.crane.R
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.vectorResource
import androidx.compose.ui.res.painterResource
import kotlinx.coroutines.delay

private const val SplashWaitTime: Long = 2000
Expand All @@ -41,6 +41,6 @@ fun LandingScreen(modifier: Modifier = Modifier, onTimeout: () -> Unit) {
delay(SplashWaitTime)
currentOnTimeout()
}
Image(vectorResource(id = R.drawable.ic_crane_drawer), contentDescription = null)
Image(painterResource(id = R.drawable.ic_crane_drawer), contentDescription = null)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ package androidx.compose.samples.crane.home

import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.annotation.VisibleForTesting
import androidx.compose.animation.core.MutableTransitionState
import androidx.compose.animation.core.Spring.StiffnessLow
Expand All @@ -38,7 +39,6 @@ import androidx.compose.samples.crane.calendar.launchCalendarActivity
import androidx.compose.samples.crane.details.launchDetailsActivity
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.alpha
import androidx.compose.ui.platform.setContent
import androidx.compose.ui.unit.Dp
import androidx.compose.ui.unit.dp
import dagger.hilt.android.AndroidEntryPoint
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@

package androidx.compose.samples.crane.ui

import androidx.compose.foundation.shape.CornerSize
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.foundation.shape.ZeroCornerSize
import androidx.compose.material.MaterialTheme
import androidx.compose.material.lightColors
import androidx.compose.runtime.Composable
Expand All @@ -42,10 +40,10 @@ val craneColors = lightColors(
)

val BottomSheetShape = RoundedCornerShape(
topLeft = CornerSize(20.dp),
topRight = CornerSize(20.dp),
bottomLeft = ZeroCornerSize,
bottomRight = ZeroCornerSize
topStart = 20.dp,
topEnd = 20.dp,
bottomStart = 0.dp,
bottomEnd = 0.dp
)

@Composable
Expand Down
9 changes: 2 additions & 7 deletions Crane/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ buildscript {
}

plugins {
id 'com.diffplug.spotless' version '5.8.2'
id 'com.diffplug.spotless' version '5.10.0'
}

subprojects {
Expand Down Expand Up @@ -66,11 +66,6 @@ subprojects {

// Use experimental APIs
freeCompilerArgs += '-Xopt-in=kotlin.RequiresOptIn'
freeCompilerArgs += '-Xallow-jvm-ir-dependencies'
freeCompilerArgs += [
'-P',
'plugin:androidx.compose.compiler.plugins.kotlin:intrinsicRemember=true'
]
}
}
}
}
Loading

0 comments on commit 23fef00

Please sign in to comment.