[go: nahoru, domu]

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) {