Kotlin Rebase ComposeUI 1.4
Change-Id: Ie3a00900a8be81e606e1715d1c45955f86ffd537
diff --git a/ui/ui-material/build.gradle b/ui/ui-material/build.gradle
index cf786ec..e9d4c65 100644
--- a/ui/ui-material/build.gradle
+++ b/ui/ui-material/build.gradle
@@ -90,3 +90,11 @@
sourceSets.androidTest.assets.srcDirs +=
project.rootDir.absolutePath + "/../../../golden/ui/ui-material"
}
+
+tasks.withType(KotlinCompile).configureEach {
+ kotlinOptions {
+ freeCompilerArgs += [
+ "-Xallow-jvm-ir-dependencies"
+ ]
+ }
+}
diff --git a/ui/ui-material/icons/core/build.gradle b/ui/ui-material/icons/core/build.gradle
index 034ba05..4d6e31b 100644
--- a/ui/ui-material/icons/core/build.gradle
+++ b/ui/ui-material/icons/core/build.gradle
@@ -18,6 +18,7 @@
import androidx.build.LibraryVersions
import androidx.build.Publish
import androidx.ui.material.icons.generator.tasks.IconGenerationTask
+import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
import static androidx.build.dependencies.DependenciesKt.*
@@ -44,3 +45,11 @@
inceptionYear = "2020"
description = "AndroidX Core Material Icons"
}
+
+tasks.withType(KotlinCompile).configureEach {
+ kotlinOptions {
+ freeCompilerArgs += [
+ "-Xallow-jvm-ir-dependencies"
+ ]
+ }
+}
diff --git a/ui/ui-material/src/main/java/androidx/ui/material/FilledTextField.kt b/ui/ui-material/src/main/java/androidx/ui/material/FilledTextField.kt
index 02713e9..42facff 100644
--- a/ui/ui-material/src/main/java/androidx/ui/material/FilledTextField.kt
+++ b/ui/ui-material/src/main/java/androidx/ui/material/FilledTextField.kt
@@ -494,7 +494,7 @@
leadingPlaceable,
trailingPlaceable,
textFieldPlaceable
- ).maxBy { heightOrZero(it) }
+ ).maxByOrNull { heightOrZero(it) }
),
incomingConstraints.minHeight
)
diff --git a/ui/ui-material/src/main/java/androidx/ui/material/OutlinedTextField.kt b/ui/ui-material/src/main/java/androidx/ui/material/OutlinedTextField.kt
index 2c65c21..3c8ded4 100644
--- a/ui/ui-material/src/main/java/androidx/ui/material/OutlinedTextField.kt
+++ b/ui/ui-material/src/main/java/androidx/ui/material/OutlinedTextField.kt
@@ -483,7 +483,7 @@
textFieldPlaceable,
labelPlaceable,
placeholderPlaceable
- ).maxBy { widthOrZero(it) }
+ ).maxByOrNull { widthOrZero(it) }
)
val wrappedWidth =
widthOrZero(leadingPlaceable) + middleSection + widthOrZero(
@@ -522,7 +522,7 @@
heightOrZero(leadingPlaceable),
heightOrZero(trailingPlaceable),
middleSectionHeight.roundToInt()
- ).max() ?: 0,
+ ).maxOrNull() ?: 0,
constraints.minHeight
)
}
diff --git a/ui/ui-material/src/main/java/androidx/ui/material/Slider.kt b/ui/ui-material/src/main/java/androidx/ui/material/Slider.kt
index 998e05e..cdd2be3 100644
--- a/ui/ui-material/src/main/java/androidx/ui/material/Slider.kt
+++ b/ui/ui-material/src/main/java/androidx/ui/material/Slider.kt
@@ -294,7 +294,7 @@
} else {
val adjustTarget: (Float) -> TargetAnimation? = { _ ->
val now = value.holder.value
- val point = anchors.minBy { abs(it - now) }
+ val point = anchors.minByOrNull { abs(it - now) }
val adjusted = point ?: now
TargetAnimation(adjusted, SliderToTickAnimation)
}
@@ -362,7 +362,7 @@
val anchorsValue = position.tickFractions.map {
lerp(position.startValue, position.endValue, it)
}
- val point = anchorsValue.minBy { abs(it - newValue) }
+ val point = anchorsValue.minByOrNull { abs(it - newValue) }
newValue = point ?: newValue
}
// This is to keep it consistent with AbsSeekbar.java: return false if no
diff --git a/ui/ui-material/src/main/java/androidx/ui/material/internal/StateDraggable.kt b/ui/ui-material/src/main/java/androidx/ui/material/internal/StateDraggable.kt
index 8f6f731..d786db2 100644
--- a/ui/ui-material/src/main/java/androidx/ui/material/internal/StateDraggable.kt
+++ b/ui/ui-material/src/main/java/androidx/ui/material/internal/StateDraggable.kt
@@ -101,8 +101,8 @@
},
adjustTarget = { target ->
// Find the two anchors the target lies between.
- val a = anchors.filter { it <= target }.max()
- val b = anchors.filter { it >= target }.min()
+ val a = anchors.filter { it <= target }.maxOrNull()
+ val b = anchors.filter { it >= target }.minOrNull()
// Compute which anchor to fling to.
val adjusted: Float =
if (a == null && b == null) {