Merge "Fix code inspection & Format warning" into androidx-master-dev
diff --git a/activity/activity/lint-baseline.xml b/activity/activity/lint-baseline.xml
deleted file mode 100644
index 591c093..0000000
--- a/activity/activity/lint-baseline.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2019 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-
-<issues format="5" by="lint 3.5.0-beta04" client="gradle" variant="debug" version="3.5.0-beta04">
-
- <issue
- id="LambdaLast"
- message="Functional interface parameters (such as parameter 1, "owner", in androidx.activity.OnBackPressedDispatcher.addCallback) should be last to improve Kotlin interoperability; see https://kotlinlang.org/docs/reference/java-interop.html#sam-conversions"
- errorLine1=" @NonNull OnBackPressedCallback onBackPressedCallback) {"
- errorLine2=" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/activity/OnBackPressedDispatcher.java"
- line="144"
- column="13"/>
- </issue>
-
-</issues>
diff --git a/activity/activity/src/main/java/androidx/activity/OnBackPressedDispatcher.java b/activity/activity/src/main/java/androidx/activity/OnBackPressedDispatcher.java
index 71e5dce..e842248 100644
--- a/activity/activity/src/main/java/androidx/activity/OnBackPressedDispatcher.java
+++ b/activity/activity/src/main/java/androidx/activity/OnBackPressedDispatcher.java
@@ -16,6 +16,8 @@
package androidx.activity;
+import android.annotation.SuppressLint;
+
import androidx.annotation.MainThread;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -139,6 +141,7 @@
*
* @see #onBackPressed()
*/
+ @SuppressLint("LambdaLast")
@MainThread
public void addCallback(@NonNull LifecycleOwner owner,
@NonNull OnBackPressedCallback onBackPressedCallback) {
diff --git a/car/core/api/1.0.0-alpha8.txt b/car/core/api/1.0.0-alpha8.txt
index d3d8be7..bf6878c 100644
--- a/car/core/api/1.0.0-alpha8.txt
+++ b/car/core/api/1.0.0-alpha8.txt
@@ -295,7 +295,7 @@
method public androidx.car.widget.CarMenuItem.Builder setDisplayBehavior(androidx.car.widget.CarMenuItem.DisplayBehavior);
method public androidx.car.widget.CarMenuItem.Builder setEnabled(boolean);
method public androidx.car.widget.CarMenuItem.Builder setIcon(android.graphics.drawable.Drawable);
- method public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
+ method @Deprecated public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
method public androidx.car.widget.CarMenuItem.Builder setOnClickListener(androidx.car.widget.CarMenuItem.OnClickListener);
method public androidx.car.widget.CarMenuItem.Builder setStyle(@StyleRes int);
method public androidx.car.widget.CarMenuItem.Builder setTitle(CharSequence);
diff --git a/car/core/api/current.txt b/car/core/api/current.txt
index d3d8be7..bf6878c 100644
--- a/car/core/api/current.txt
+++ b/car/core/api/current.txt
@@ -295,7 +295,7 @@
method public androidx.car.widget.CarMenuItem.Builder setDisplayBehavior(androidx.car.widget.CarMenuItem.DisplayBehavior);
method public androidx.car.widget.CarMenuItem.Builder setEnabled(boolean);
method public androidx.car.widget.CarMenuItem.Builder setIcon(android.graphics.drawable.Drawable);
- method public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
+ method @Deprecated public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
method public androidx.car.widget.CarMenuItem.Builder setOnClickListener(androidx.car.widget.CarMenuItem.OnClickListener);
method public androidx.car.widget.CarMenuItem.Builder setStyle(@StyleRes int);
method public androidx.car.widget.CarMenuItem.Builder setTitle(CharSequence);
diff --git a/car/core/api/restricted_1.0.0-alpha8.txt b/car/core/api/restricted_1.0.0-alpha8.txt
index c177433..b4d0539 100644
--- a/car/core/api/restricted_1.0.0-alpha8.txt
+++ b/car/core/api/restricted_1.0.0-alpha8.txt
@@ -318,7 +318,7 @@
method public androidx.car.widget.CarMenuItem.Builder setDisplayBehavior(androidx.car.widget.CarMenuItem.DisplayBehavior);
method public androidx.car.widget.CarMenuItem.Builder setEnabled(boolean);
method public androidx.car.widget.CarMenuItem.Builder setIcon(android.graphics.drawable.Drawable);
- method public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
+ method @Deprecated public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
method public androidx.car.widget.CarMenuItem.Builder setOnClickListener(androidx.car.widget.CarMenuItem.OnClickListener);
method public androidx.car.widget.CarMenuItem.Builder setStyle(@StyleRes int);
method public androidx.car.widget.CarMenuItem.Builder setTitle(CharSequence);
diff --git a/car/core/api/restricted_current.txt b/car/core/api/restricted_current.txt
index c177433..b4d0539 100644
--- a/car/core/api/restricted_current.txt
+++ b/car/core/api/restricted_current.txt
@@ -318,7 +318,7 @@
method public androidx.car.widget.CarMenuItem.Builder setDisplayBehavior(androidx.car.widget.CarMenuItem.DisplayBehavior);
method public androidx.car.widget.CarMenuItem.Builder setEnabled(boolean);
method public androidx.car.widget.CarMenuItem.Builder setIcon(android.graphics.drawable.Drawable);
- method public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
+ method @Deprecated public androidx.car.widget.CarMenuItem.Builder setIcon(android.content.Context, @DrawableRes int);
method public androidx.car.widget.CarMenuItem.Builder setOnClickListener(androidx.car.widget.CarMenuItem.OnClickListener);
method public androidx.car.widget.CarMenuItem.Builder setStyle(@StyleRes int);
method public androidx.car.widget.CarMenuItem.Builder setTitle(CharSequence);
diff --git a/car/core/src/androidTest/java/androidx/car/widget/CarToolbarTest.java b/car/core/src/androidTest/java/androidx/car/widget/CarToolbarTest.java
index 2ce3e70..81f524c 100644
--- a/car/core/src/androidTest/java/androidx/car/widget/CarToolbarTest.java
+++ b/car/core/src/androidTest/java/androidx/car/widget/CarToolbarTest.java
@@ -336,7 +336,7 @@
.Builder()
.setTitle(actionItemText)
.setDisplayBehavior(CarMenuItem.DisplayBehavior.ALWAYS) // Action item
- .setIcon(mActivity, android.R.drawable.sym_def_app_icon)
+ .setIcon(mActivity.getDrawable(android.R.drawable.sym_def_app_icon))
.build();
mActivityRule.runOnUiThread(() ->
diff --git a/car/core/src/main/java/androidx/car/widget/CarMenuItem.java b/car/core/src/main/java/androidx/car/widget/CarMenuItem.java
index 42d20b8..400a2e0 100644
--- a/car/core/src/main/java/androidx/car/widget/CarMenuItem.java
+++ b/car/core/src/main/java/androidx/car/widget/CarMenuItem.java
@@ -265,7 +265,10 @@
* @param context Context to load the drawable resource with.
* @param iconResId Resource id of icon of the {@code CarMenuItem}.
* @return This {@code Builder} object to allow call chaining.
+ *
+ * @deprecated Use {@link #setIcon(Drawable)} instead.
*/
+ @Deprecated
@NonNull
public Builder setIcon(@NonNull Context context, @DrawableRes int iconResId) {
mIconDrawable = context.getDrawable(iconResId);
diff --git a/core/core/api/1.2.0-alpha03.txt b/core/core/api/1.2.0-alpha03.txt
index fe4b834..d39053e 100644
--- a/core/core/api/1.2.0-alpha03.txt
+++ b/core/core/api/1.2.0-alpha03.txt
@@ -1610,7 +1610,7 @@
}
public interface Predicate<T> {
- method public boolean test(T?);
+ method public boolean test(T!);
}
public interface Supplier<T> {
diff --git a/core/core/api/current.txt b/core/core/api/current.txt
index fe4b834..d39053e 100644
--- a/core/core/api/current.txt
+++ b/core/core/api/current.txt
@@ -1610,7 +1610,7 @@
}
public interface Predicate<T> {
- method public boolean test(T?);
+ method public boolean test(T!);
}
public interface Supplier<T> {
diff --git a/core/core/api/restricted_1.2.0-alpha03.txt b/core/core/api/restricted_1.2.0-alpha03.txt
index fe706a7..7991be2 100644
--- a/core/core/api/restricted_1.2.0-alpha03.txt
+++ b/core/core/api/restricted_1.2.0-alpha03.txt
@@ -1969,7 +1969,7 @@
}
public interface Predicate<T> {
- method public boolean test(T?);
+ method public boolean test(T!);
}
public interface Supplier<T> {
diff --git a/core/core/api/restricted_current.txt b/core/core/api/restricted_current.txt
index fe706a7..7991be2 100644
--- a/core/core/api/restricted_current.txt
+++ b/core/core/api/restricted_current.txt
@@ -1969,7 +1969,7 @@
}
public interface Predicate<T> {
- method public boolean test(T?);
+ method public boolean test(T!);
}
public interface Supplier<T> {
diff --git a/core/core/src/main/java/androidx/core/util/Predicate.java b/core/core/src/main/java/androidx/core/util/Predicate.java
index 41e8582..ceb9e6f 100644
--- a/core/core/src/main/java/androidx/core/util/Predicate.java
+++ b/core/core/src/main/java/androidx/core/util/Predicate.java
@@ -16,7 +16,7 @@
package androidx.core.util;
-import androidx.annotation.Nullable;
+import android.annotation.SuppressLint;
/**
* Compat version of {@link java.util.function.Predicate}
@@ -32,5 +32,6 @@
* @return {@code true} if the input argument matches the predicate,
* otherwise {@code false}
*/
- boolean test(@Nullable T t);
+ @SuppressLint("UnknownNullness")
+ boolean test(T t);
}
diff --git a/fragment/fragment/lint-baseline.xml b/fragment/fragment/lint-baseline.xml
deleted file mode 100644
index 8a8c65d..0000000
--- a/fragment/fragment/lint-baseline.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Copyright 2019 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- -->
-
-<issues format="5" by="lint 3.5.0-beta04" client="gradle" variant="debug" version="3.5.0-beta04">
-
- <issue
- id="KotlinPropertyAccess"
- message="This method should be called `getHasOptionsMenu` such that `hasOptionsMenu` can be accessed as a property from Kotlin; see https://android.github.io/kotlin-guides/interop.html#property-prefixes"
- errorLine1=" final public boolean hasOptionsMenu() {"
- errorLine2=" ~~~~~~~~~~~~~~">
- <location
- file="src/main/java/androidx/fragment/app/Fragment.java"
- line="1018"
- column="26"/>
- </issue>
-
-</issues>
diff --git a/fragment/fragment/src/main/java/androidx/fragment/app/Fragment.java b/fragment/fragment/src/main/java/androidx/fragment/app/Fragment.java
index 4dc499c..84058db 100644
--- a/fragment/fragment/src/main/java/androidx/fragment/app/Fragment.java
+++ b/fragment/fragment/src/main/java/androidx/fragment/app/Fragment.java
@@ -1063,6 +1063,7 @@
/** @hide */
@RestrictTo(LIBRARY_GROUP_PREFIX)
+ @SuppressLint("KotlinPropertyAccess")
final public boolean hasOptionsMenu() {
return mHasMenu;
}
diff --git a/ui/ui-framework/api/1.0.0-alpha01.txt b/ui/ui-framework/api/1.0.0-alpha01.txt
index 56e2390..57227bf 100644
--- a/ui/ui-framework/api/1.0.0-alpha01.txt
+++ b/ui/ui-framework/api/1.0.0-alpha01.txt
@@ -6,12 +6,23 @@
method public static void Clip(androidx.ui.engine.geometry.Shape shape, kotlin.jvm.functions.Function0<kotlin.Unit> children);
}
+ public final class ComplexLayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public androidx.ui.core.Density getDensity();
+ method public androidx.ui.core.LayoutResult layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
+ method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
+ method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ property public androidx.ui.core.Density density;
+ }
+
public final class ComplexLayoutReceiver {
- method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
- method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
- method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
- method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
+ method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.ComplexLayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
+ method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
+ method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
+ method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
}
public final class DrawKt {
@@ -32,7 +43,7 @@
method public androidx.ui.text.TextStyle? getTextStyle();
}
- public final class IntrinsicMeasurementsReceiver implements androidx.ui.core.DensityReceiver {
+ public final class IntrinsicMeasurementReceiver implements androidx.ui.core.DensityReceiver {
method public androidx.ui.core.Density getDensity();
method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
@@ -42,13 +53,10 @@
}
public final class LayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public androidx.ui.core.Density getDensity();
- method public void layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.LayoutResult layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
property public androidx.ui.core.Density density;
}
@@ -67,19 +75,18 @@
public final class LayoutKt {
ctor public LayoutKt();
method public static void ComplexLayout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function1<? super androidx.ui.core.ComplexLayoutReceiver,kotlin.Unit> block);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
method public static void OnChildPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public static void OnPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned);
method public static void WithConstraints(kotlin.jvm.functions.Function1<? super androidx.ui.core.Constraints,kotlin.Unit> children);
}
- public final class LayoutReceiver implements androidx.ui.core.DensityReceiver {
- method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
- method public androidx.ui.core.Density getDensity();
- method public void layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- property public androidx.ui.core.Density density;
+ public final class LayoutResult {
+ field public static final androidx.ui.core.LayoutResult.Companion! Companion;
+ }
+
+ public static final class LayoutResult.Companion {
}
public interface Measurable {
diff --git a/ui/ui-framework/api/current.txt b/ui/ui-framework/api/current.txt
index 56e2390..57227bf 100644
--- a/ui/ui-framework/api/current.txt
+++ b/ui/ui-framework/api/current.txt
@@ -6,12 +6,23 @@
method public static void Clip(androidx.ui.engine.geometry.Shape shape, kotlin.jvm.functions.Function0<kotlin.Unit> children);
}
+ public final class ComplexLayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public androidx.ui.core.Density getDensity();
+ method public androidx.ui.core.LayoutResult layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
+ method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
+ method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ property public androidx.ui.core.Density density;
+ }
+
public final class ComplexLayoutReceiver {
- method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
- method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
- method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
- method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
+ method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.ComplexLayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
+ method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
+ method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
+ method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
}
public final class DrawKt {
@@ -32,7 +43,7 @@
method public androidx.ui.text.TextStyle? getTextStyle();
}
- public final class IntrinsicMeasurementsReceiver implements androidx.ui.core.DensityReceiver {
+ public final class IntrinsicMeasurementReceiver implements androidx.ui.core.DensityReceiver {
method public androidx.ui.core.Density getDensity();
method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
@@ -42,13 +53,10 @@
}
public final class LayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public androidx.ui.core.Density getDensity();
- method public void layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.LayoutResult layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
property public androidx.ui.core.Density density;
}
@@ -67,19 +75,18 @@
public final class LayoutKt {
ctor public LayoutKt();
method public static void ComplexLayout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function1<? super androidx.ui.core.ComplexLayoutReceiver,kotlin.Unit> block);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
method public static void OnChildPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public static void OnPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned);
method public static void WithConstraints(kotlin.jvm.functions.Function1<? super androidx.ui.core.Constraints,kotlin.Unit> children);
}
- public final class LayoutReceiver implements androidx.ui.core.DensityReceiver {
- method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
- method public androidx.ui.core.Density getDensity();
- method public void layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- property public androidx.ui.core.Density density;
+ public final class LayoutResult {
+ field public static final androidx.ui.core.LayoutResult.Companion! Companion;
+ }
+
+ public static final class LayoutResult.Companion {
}
public interface Measurable {
diff --git a/ui/ui-framework/api/restricted_1.0.0-alpha01.txt b/ui/ui-framework/api/restricted_1.0.0-alpha01.txt
index 56e2390..57227bf 100644
--- a/ui/ui-framework/api/restricted_1.0.0-alpha01.txt
+++ b/ui/ui-framework/api/restricted_1.0.0-alpha01.txt
@@ -6,12 +6,23 @@
method public static void Clip(androidx.ui.engine.geometry.Shape shape, kotlin.jvm.functions.Function0<kotlin.Unit> children);
}
+ public final class ComplexLayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public androidx.ui.core.Density getDensity();
+ method public androidx.ui.core.LayoutResult layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
+ method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
+ method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ property public androidx.ui.core.Density density;
+ }
+
public final class ComplexLayoutReceiver {
- method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
- method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
- method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
- method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
+ method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.ComplexLayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
+ method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
+ method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
+ method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
}
public final class DrawKt {
@@ -32,7 +43,7 @@
method public androidx.ui.text.TextStyle? getTextStyle();
}
- public final class IntrinsicMeasurementsReceiver implements androidx.ui.core.DensityReceiver {
+ public final class IntrinsicMeasurementReceiver implements androidx.ui.core.DensityReceiver {
method public androidx.ui.core.Density getDensity();
method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
@@ -42,13 +53,10 @@
}
public final class LayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public androidx.ui.core.Density getDensity();
- method public void layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.LayoutResult layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
property public androidx.ui.core.Density density;
}
@@ -67,19 +75,18 @@
public final class LayoutKt {
ctor public LayoutKt();
method public static void ComplexLayout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function1<? super androidx.ui.core.ComplexLayoutReceiver,kotlin.Unit> block);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
method public static void OnChildPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public static void OnPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned);
method public static void WithConstraints(kotlin.jvm.functions.Function1<? super androidx.ui.core.Constraints,kotlin.Unit> children);
}
- public final class LayoutReceiver implements androidx.ui.core.DensityReceiver {
- method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
- method public androidx.ui.core.Density getDensity();
- method public void layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- property public androidx.ui.core.Density density;
+ public final class LayoutResult {
+ field public static final androidx.ui.core.LayoutResult.Companion! Companion;
+ }
+
+ public static final class LayoutResult.Companion {
}
public interface Measurable {
diff --git a/ui/ui-framework/api/restricted_current.txt b/ui/ui-framework/api/restricted_current.txt
index 56e2390..57227bf 100644
--- a/ui/ui-framework/api/restricted_current.txt
+++ b/ui/ui-framework/api/restricted_current.txt
@@ -6,12 +6,23 @@
method public static void Clip(androidx.ui.engine.geometry.Shape shape, kotlin.jvm.functions.Function0<kotlin.Unit> children);
}
+ public final class ComplexLayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public androidx.ui.core.Density getDensity();
+ method public androidx.ui.core.LayoutResult layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
+ method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
+ method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
+ method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ property public androidx.ui.core.Density density;
+ }
+
public final class ComplexLayoutReceiver {
- method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
- method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
- method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
- method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementsReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
+ method public void layout(kotlin.jvm.functions.Function3<? super androidx.ui.core.ComplexLayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public void maxIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicHeightBlock);
+ method public void maxIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> maxIntrinsicWidthBlock);
+ method public void minIntrinsicHeight(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicHeightBlock);
+ method public void minIntrinsicWidth(kotlin.jvm.functions.Function3<? super androidx.ui.core.IntrinsicMeasurementReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.IntPx,androidx.ui.core.IntPx> minIntrinsicWidthBlock);
}
public final class DrawKt {
@@ -32,7 +43,7 @@
method public androidx.ui.text.TextStyle? getTextStyle();
}
- public final class IntrinsicMeasurementsReceiver implements androidx.ui.core.DensityReceiver {
+ public final class IntrinsicMeasurementReceiver implements androidx.ui.core.DensityReceiver {
method public androidx.ui.core.Density getDensity();
method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
@@ -42,13 +53,10 @@
}
public final class LayoutBlockReceiver implements androidx.ui.core.DensityReceiver {
+ method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public androidx.ui.core.Density getDensity();
- method public void layoutResult(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.IntPx maxIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx maxIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
+ method public androidx.ui.core.LayoutResult layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- method public androidx.ui.core.IntPx minIntrinsicHeight(androidx.ui.core.Measurable, androidx.ui.core.IntPx w);
- method public androidx.ui.core.IntPx minIntrinsicWidth(androidx.ui.core.Measurable, androidx.ui.core.IntPx h);
property public androidx.ui.core.Density density;
}
@@ -67,19 +75,18 @@
public final class LayoutKt {
ctor public LayoutKt();
method public static void ComplexLayout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function1<? super androidx.ui.core.ComplexLayoutReceiver,kotlin.Unit> block);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
- method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,kotlin.Unit> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit> children, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
+ method public static void Layout(kotlin.jvm.functions.Function0<kotlin.Unit>![] childrenArray, kotlin.jvm.functions.Function3<? super androidx.ui.core.LayoutBlockReceiver,? super java.util.List<? extends androidx.ui.core.Measurable>,? super androidx.ui.core.Constraints,androidx.ui.core.LayoutResult> layoutBlock);
method public static void OnChildPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned, kotlin.jvm.functions.Function0<kotlin.Unit> children);
method public static void OnPositioned(kotlin.jvm.functions.Function1<? super androidx.ui.core.LayoutCoordinates,kotlin.Unit> onPositioned);
method public static void WithConstraints(kotlin.jvm.functions.Function1<? super androidx.ui.core.Constraints,kotlin.Unit> children);
}
- public final class LayoutReceiver implements androidx.ui.core.DensityReceiver {
- method public operator java.util.List<androidx.ui.core.Measurable> get(java.util.List<? extends androidx.ui.core.Measurable>, kotlin.jvm.functions.Function0<kotlin.Unit> children);
- method public androidx.ui.core.Density getDensity();
- method public void layout(androidx.ui.core.IntPx width, androidx.ui.core.IntPx height, kotlin.jvm.functions.Function1<? super androidx.ui.core.PositioningBlockReceiver,kotlin.Unit> block);
- method public androidx.ui.core.Placeable measure(androidx.ui.core.Measurable, androidx.ui.core.Constraints constraints);
- property public androidx.ui.core.Density density;
+ public final class LayoutResult {
+ field public static final androidx.ui.core.LayoutResult.Companion! Companion;
+ }
+
+ public static final class LayoutResult.Companion {
}
public interface Measurable {
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt
index 3c79ab3..c8866dc 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/AndroidLayoutDrawTest.kt
@@ -426,14 +426,17 @@
val header = @Composable {
Layout(layoutBlock = { _, constraints ->
assertEquals(childConstraints[0], constraints)
+ layout(0.ipx, 0.ipx) {}
}, children = {})
}
val footer = @Composable {
Layout(layoutBlock = { _, constraints ->
assertEquals(childConstraints[1], constraints)
+ layout(0.ipx, 0.ipx) {}
}, children = {})
Layout(layoutBlock = { _, constraints ->
assertEquals(childConstraints[2], constraints)
+ layout(0.ipx, 0.ipx) {}
}, children = {})
}
@Suppress("USELESS_CAST")
@@ -447,6 +450,7 @@
assertEquals(footerChildrenCount, measurables[footer].size)
assertSame(measurables[1], measurables[footer][0])
assertSame(measurables[2], measurables[footer][1])
+ layout(0.ipx, 0.ipx) {}
}
}
}
@@ -458,18 +462,19 @@
activity.setContent {
val header = @Composable {
ParentData(data = 0) {
- Layout(layoutBlock = { _, _ -> }, children = {})
+ Layout(layoutBlock = { _, _ -> layout(0.ipx, 0.ipx, {}) }, children = {})
}
}
val footer = @Composable {
ParentData(data = 1) {
- Layout(layoutBlock = { _, _ -> }, children = {})
+ Layout(layoutBlock = { _, _ -> layout(0.ipx, 0.ipx, {}) }, children = {})
}
}
Layout(childrenArray = arrayOf(header, footer)) { measurables, _ ->
assertEquals(0, measurables[0].parentData)
assertEquals(1, measurables[1].parentData)
+ layout(0.ipx, 0.ipx, {})
}
}
}
@@ -1042,6 +1047,7 @@
// expected
latch.countDown()
}
+ layout(0.ipx, 0.ipx, {})
}
}
diff --git a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/TextLayoutTest.kt b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/TextLayoutTest.kt
index 9f42391..ccfa929 100644
--- a/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/TextLayoutTest.kt
+++ b/ui/ui-framework/src/androidTest/java/androidx/ui/core/test/TextLayoutTest.kt
@@ -137,7 +137,7 @@
var threw = false
try {
textMeasurable.minIntrinsicWidth(0.ipx)
- } catch(e: UnsupportedOperationException) {
+ } catch (e: UnsupportedOperationException) {
threw = true
}
assertTrue(threw)
@@ -153,6 +153,8 @@
assertEquals(textHeight, textMeasurable.maxIntrinsicHeight(IntPx.Infinity))
intrinsicsLatch.countDown()
+
+ layoutResult(0.ipx, 0.ipx) {}
}
minIntrinsicWidth { _, _ -> 0.ipx }
minIntrinsicHeight { _, _ -> 0.ipx }
diff --git a/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt b/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt
index 168452a..f328eff 100644
--- a/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt
+++ b/ui/ui-framework/src/main/java/androidx/ui/core/Layout.kt
@@ -27,14 +27,28 @@
import androidx.compose.trace
import androidx.compose.unaryPlus
-internal typealias LayoutBlock = LayoutBlockReceiver.(List<Measurable>, Constraints) -> Unit
-internal typealias IntrinsicMeasurementBlock = IntrinsicMeasurementsReceiver
- .(List<Measurable>, IntPx) -> IntPx
-internal val LayoutBlockStub: LayoutBlock = { _, _ -> }
+internal typealias LayoutBlock =
+ LayoutBlockReceiver.(List<Measurable>, Constraints) -> LayoutResult
+internal typealias ComplexLayoutBlock =
+ ComplexLayoutBlockReceiver.(List<Measurable>, Constraints) -> LayoutResult
+internal typealias IntrinsicMeasurementBlock =
+ IntrinsicMeasurementReceiver.(List<Measurable>, IntPx) -> IntPx
+
+internal val ComplexLayoutBlockStub: ComplexLayoutBlock = { _, _ -> LayoutResult.instance }
internal val IntrinsicMeasurementBlockStub: IntrinsicMeasurementBlock = { _, _ -> 0.ipx }
+/**
+ * Object returned from [LayoutBlockReceiver.layout] and [ComplexLayoutBlockReceiver.layoutResult]
+ * to deliver proof the method was called in [LayoutBlock] and [ComplexLayoutBlock], respectively.
+ */
+class LayoutResult private constructor() {
+ companion object {
+ internal val instance = LayoutResult()
+ }
+}
+
internal class ComplexLayoutState(
- internal var layoutBlock: LayoutBlock = LayoutBlockStub,
+ internal var layoutBlock: ComplexLayoutBlock = ComplexLayoutBlockStub,
internal var minIntrinsicWidthBlock: IntrinsicMeasurementBlock = IntrinsicMeasurementBlockStub,
internal var maxIntrinsicWidthBlock: IntrinsicMeasurementBlock = IntrinsicMeasurementBlockStub,
internal var minIntrinsicHeightBlock: IntrinsicMeasurementBlock = IntrinsicMeasurementBlockStub,
@@ -57,9 +71,9 @@
internal var block: ComplexLayoutReceiver.() -> Unit = {}
internal var positioningBlock: PositioningBlockReceiver.() -> Unit = {}
- internal val layoutBlockReceiver = LayoutBlockReceiver(this)
+ internal val layoutBlockReceiver = ComplexLayoutBlockReceiver(this)
internal val intrinsicMeasurementsReceiver =
- IntrinsicMeasurementsReceiver(this)
+ IntrinsicMeasurementReceiver(this)
internal val positioningBlockReceiver = PositioningBlockReceiver()
internal val layoutNodeRef = Ref<LayoutNode>()
@@ -203,7 +217,7 @@
* Receiver scope for the [ComplexLayout] lambda.
*/
class ComplexLayoutReceiver internal constructor(internal val layoutState: ComplexLayoutState) {
- fun layout(layoutBlock: LayoutBlock) {
+ fun layout(layoutBlock: ComplexLayoutBlock) {
layoutState.layoutBlock = layoutBlock
}
fun minIntrinsicWidth(minIntrinsicWidthBlock: IntrinsicMeasurementBlock) {
@@ -220,7 +234,7 @@
}
internal fun runBlock(block: ComplexLayoutReceiver.() -> Unit) {
- layoutState.layoutBlock = LayoutBlockStub
+ layoutState.layoutBlock = ComplexLayoutBlockStub
layoutState.minIntrinsicWidthBlock = IntrinsicMeasurementBlockStub
layoutState.maxIntrinsicWidthBlock = IntrinsicMeasurementBlockStub
layoutState.minIntrinsicHeightBlock = IntrinsicMeasurementBlockStub
@@ -231,7 +245,7 @@
val noLambdaMessage = { subject: String ->
{ "No $subject lambda provided in ComplexLayout" }
}
- require(layoutState.layoutBlock != LayoutBlockStub, noLambdaMessage("layout"))
+ require(layoutState.layoutBlock != ComplexLayoutBlockStub, noLambdaMessage("layout"))
require(
layoutState.minIntrinsicWidthBlock != IntrinsicMeasurementBlockStub,
noLambdaMessage("minIntrinsicWidth")
@@ -283,7 +297,7 @@
/**
* Receiver scope for [ComplexLayout]'s intrinsic measurements lambdas.
*/
-class IntrinsicMeasurementsReceiver internal constructor(
+class IntrinsicMeasurementReceiver internal constructor(
internal val layoutState: ComplexLayoutState
) : DensityReceiver {
override val density: Density
@@ -301,7 +315,7 @@
/**
* Receiver scope for [ComplexLayout]'s layout lambda.
*/
-class LayoutBlockReceiver internal constructor(
+class ComplexLayoutBlockReceiver internal constructor(
internal val layoutState: ComplexLayoutState
) : DensityReceiver {
override val density: Density
@@ -315,9 +329,10 @@
width: IntPx,
height: IntPx,
block: PositioningBlockReceiver.() -> Unit
- ) {
+ ): LayoutResult {
layoutState.resize(width, height)
layoutState.positioningBlock = block
+ return LayoutResult.instance
}
fun Measurable.minIntrinsicWidth(h: IntPx) =
(this as ComplexLayoutState).minIntrinsicWidth(h)
@@ -344,19 +359,18 @@
@Composable
fun Layout(
children: @Composable() () -> Unit,
- @Children(composable = false) layoutBlock: LayoutReceiver
- .(measurables: List<Measurable>, constraints: Constraints) -> Unit
+ @Children(composable = false) layoutBlock: LayoutBlock
) {
trace("UI:Layout") {
ComplexLayout(children = children, block = {
- val layoutReceiver = LayoutReceiver(
+ val layoutReceiver = LayoutBlockReceiver(
layoutState,
LayoutMeasure, /* measure lambda */
{ _, _, _ -> }
)
layout { measurables, constraints ->
layoutReceiver.complexMeasure = LayoutMeasure
- layoutReceiver.complexLayoutResult = this::layoutResult
+ layoutReceiver.complexLayoutResult = { w, h, block -> layoutResult(w, h, block) }
layoutReceiver.layoutBlock(measurables, constraints)
}
@@ -368,7 +382,7 @@
}
layoutReceiver.complexLayoutResult = { width, _, _ -> intrinsicWidth = width }
val constraints = Constraints(maxHeight = h)
- layoutBlock(layoutReceiver, measurables, constraints)
+ layoutReceiver.layoutBlock(measurables, constraints)
intrinsicWidth
}
@@ -380,7 +394,7 @@
}
layoutReceiver.complexLayoutResult = { width, _, _ -> intrinsicWidth = width }
val constraints = Constraints(maxHeight = h)
- layoutBlock(layoutReceiver, measurables, constraints)
+ layoutReceiver.layoutBlock(measurables, constraints)
intrinsicWidth
}
@@ -392,7 +406,7 @@
}
layoutReceiver.complexLayoutResult = { _, height, _ -> intrinsicHeight = height }
val constraints = Constraints(maxWidth = w)
- layoutBlock(layoutReceiver, measurables, constraints)
+ layoutReceiver.layoutBlock(measurables, constraints)
intrinsicHeight
}
@@ -404,7 +418,7 @@
}
layoutReceiver.complexLayoutResult = { _, height, _ -> intrinsicHeight = height }
val constraints = Constraints(maxWidth = w)
- layoutBlock(layoutReceiver, measurables, constraints)
+ layoutReceiver.layoutBlock(measurables, constraints)
intrinsicHeight
}
})
@@ -437,8 +451,7 @@
@Composable
fun Layout(
childrenArray: Array<@Composable() () -> Unit>,
- @Children(composable = false) layoutBlock: LayoutReceiver
- .(measurables: List<Measurable>, constraints: Constraints) -> Unit
+ @Children(composable = false) layoutBlock: LayoutBlock
) {
val ChildrenEndMarker = @Composable { children: @Composable() () -> Unit ->
ParentData(data = ChildrenEndParentData(children)) {
@@ -457,10 +470,10 @@
}
/**
- * Receiver scope for the lambda of [Layout].
+ * Receiver scope for [Layout]'s layout lambda.
* Used to mask away intrinsics inside [Layout].
*/
-class LayoutReceiver internal constructor(
+class LayoutBlockReceiver internal constructor(
internal val layoutState: ComplexLayoutState,
internal var complexMeasure: (Measurable, Constraints) -> Placeable,
internal var complexLayoutResult: (IntPx, IntPx, PositioningBlockReceiver.() -> Unit) -> Unit
@@ -487,8 +500,13 @@
* calls to [Placeable.place], defining the positions of the children relative to the current
* layout.
*/
- fun layout(width: IntPx, height: IntPx, block: PositioningBlockReceiver.() -> Unit) {
+ fun layout(
+ width: IntPx,
+ height: IntPx,
+ block: PositioningBlockReceiver.() -> Unit
+ ): LayoutResult {
complexLayoutResult(width, height, block)
+ return LayoutResult.instance
}
}
diff --git a/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/LayoutTest.kt b/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/LayoutTest.kt
index ea2810b..d8c6eb1 100644
--- a/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/LayoutTest.kt
+++ b/ui/ui-layout/src/androidTest/java/androidx/ui/layout/test/LayoutTest.kt
@@ -149,6 +149,7 @@
{ w -> measurable.maxIntrinsicHeight(w) }
)
layoutLatch.countDown()
+ layoutResult(0.ipx, 0.ipx) {}
}
minIntrinsicWidth { _, _ -> 0.ipx }
maxIntrinsicWidth { _, _ -> 0.ipx }
diff --git a/viewpager2/src/androidTest/java/androidx/viewpager2/widget/ChangeDataSetWhileScrollingTest.kt b/viewpager2/src/androidTest/java/androidx/viewpager2/widget/ChangeDataSetWhileScrollingTest.kt
index 6040950..861f676 100644
--- a/viewpager2/src/androidTest/java/androidx/viewpager2/widget/ChangeDataSetWhileScrollingTest.kt
+++ b/viewpager2/src/androidTest/java/androidx/viewpager2/widget/ChangeDataSetWhileScrollingTest.kt
@@ -49,7 +49,7 @@
sleep(200) // introduce some delay, follow-up with pollingCheck
- PollingCheck.waitFor(1000) {
+ PollingCheck.waitFor(2000) {
viewPager.scrollState == SCROLL_STATE_IDLE && viewPager.currentItem == 0
}
diff --git a/work/workmanager/api/2.3.0-alpha01.txt b/work/workmanager/api/2.3.0-alpha01.txt
index a6cb786..0e3b058 100644
--- a/work/workmanager/api/2.3.0-alpha01.txt
+++ b/work/workmanager/api/2.3.0-alpha01.txt
@@ -64,6 +64,7 @@
public final class Data {
ctor public Data(androidx.work.Data);
+ method public static androidx.work.Data fromByteArray(byte[]);
method public boolean getBoolean(String, boolean);
method public boolean[]? getBooleanArray(String);
method public byte getByte(String, byte);
@@ -79,6 +80,7 @@
method public long[]? getLongArray(String);
method public String? getString(String);
method public String![]? getStringArray(String);
+ method public static byte[] toByteArray(androidx.work.Data);
field public static final androidx.work.Data! EMPTY;
field public static final int MAX_DATA_BYTES = 10240; // 0x2800
}
diff --git a/work/workmanager/api/current.txt b/work/workmanager/api/current.txt
index a6cb786..0e3b058 100644
--- a/work/workmanager/api/current.txt
+++ b/work/workmanager/api/current.txt
@@ -64,6 +64,7 @@
public final class Data {
ctor public Data(androidx.work.Data);
+ method public static androidx.work.Data fromByteArray(byte[]);
method public boolean getBoolean(String, boolean);
method public boolean[]? getBooleanArray(String);
method public byte getByte(String, byte);
@@ -79,6 +80,7 @@
method public long[]? getLongArray(String);
method public String? getString(String);
method public String![]? getStringArray(String);
+ method public static byte[] toByteArray(androidx.work.Data);
field public static final androidx.work.Data! EMPTY;
field public static final int MAX_DATA_BYTES = 10240; // 0x2800
}
diff --git a/work/workmanager/src/main/java/androidx/work/Data.java b/work/workmanager/src/main/java/androidx/work/Data.java
index 6d0beba..8febaf8 100644
--- a/work/workmanager/src/main/java/androidx/work/Data.java
+++ b/work/workmanager/src/main/java/androidx/work/Data.java
@@ -346,11 +346,9 @@
* @return The byte array representation of the input
* @throws IllegalStateException if the serialized payload is bigger than
* {@link #MAX_DATA_BYTES}
- * @hide
*/
- @RestrictTo(RestrictTo.Scope.LIBRARY_GROUP)
@TypeConverter
- public static @NonNull byte[] toByteArray(@NonNull Data data) throws IllegalStateException {
+ public static @NonNull byte[] toByteArray(@NonNull Data data) {
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
ObjectOutputStream objectOutputStream = null;
try {
@@ -394,11 +392,9 @@
* @param bytes The byte array representation to convert
* @return An {@link Data} object built from the input
* @throws IllegalStateException if bytes is bigger than {@link #MAX_DATA_BYTES}
- * @hide
*/
- @RestrictTo(RestrictTo.Scope.LIBRARY_GROUP)
@TypeConverter
- public static @NonNull Data fromByteArray(@NonNull byte[] bytes) throws IllegalStateException {
+ public static @NonNull Data fromByteArray(@NonNull byte[] bytes) {
if (bytes.length > MAX_DATA_BYTES) {
throw new IllegalStateException(
"Data cannot occupy more than " + MAX_DATA_BYTES + " bytes when serialized");