Merge "Promote CompositionLocal Modifier API to stable" into androidx-main
diff --git a/compose/ui/ui/api/current.txt b/compose/ui/ui/api/current.txt
index f72e699..3573195 100644
--- a/compose/ui/ui/api/current.txt
+++ b/compose/ui/ui/api/current.txt
@@ -2231,6 +2231,13 @@
package androidx.compose.ui.node {
+ public interface CompositionLocalConsumerModifierNode extends androidx.compose.ui.node.DelegatableNode {
+ }
+
+ public final class CompositionLocalConsumerModifierNodeKt {
+ method public static <T> T! currentValueOf(androidx.compose.ui.node.CompositionLocalConsumerModifierNode, androidx.compose.runtime.CompositionLocal<T> local);
+ }
+
public interface DelegatableNode {
method public androidx.compose.ui.Modifier.Node getNode();
property public abstract androidx.compose.ui.Modifier.Node node;
diff --git a/compose/ui/ui/api/public_plus_experimental_current.txt b/compose/ui/ui/api/public_plus_experimental_current.txt
index 2036735..43ad917 100644
--- a/compose/ui/ui/api/public_plus_experimental_current.txt
+++ b/compose/ui/ui/api/public_plus_experimental_current.txt
@@ -2436,11 +2436,11 @@
package androidx.compose.ui.node {
- @androidx.compose.ui.ExperimentalComposeUiApi public interface CompositionLocalConsumerModifierNode extends androidx.compose.ui.node.DelegatableNode {
+ public interface CompositionLocalConsumerModifierNode extends androidx.compose.ui.node.DelegatableNode {
}
public final class CompositionLocalConsumerModifierNodeKt {
- method @androidx.compose.ui.ExperimentalComposeUiApi public static <T> T! currentValueOf(androidx.compose.ui.node.CompositionLocalConsumerModifierNode, androidx.compose.runtime.CompositionLocal<T> local);
+ method public static <T> T! currentValueOf(androidx.compose.ui.node.CompositionLocalConsumerModifierNode, androidx.compose.runtime.CompositionLocal<T> local);
}
public interface DelegatableNode {
diff --git a/compose/ui/ui/api/restricted_current.txt b/compose/ui/ui/api/restricted_current.txt
index 8b78f8253..9b3c278 100644
--- a/compose/ui/ui/api/restricted_current.txt
+++ b/compose/ui/ui/api/restricted_current.txt
@@ -2278,6 +2278,13 @@
property public final kotlin.jvm.functions.Function0<androidx.compose.ui.node.ComposeUiNode> VirtualConstructor;
}
+ public interface CompositionLocalConsumerModifierNode extends androidx.compose.ui.node.DelegatableNode {
+ }
+
+ public final class CompositionLocalConsumerModifierNodeKt {
+ method public static <T> T! currentValueOf(androidx.compose.ui.node.CompositionLocalConsumerModifierNode, androidx.compose.runtime.CompositionLocal<T> local);
+ }
+
public interface DelegatableNode {
method public androidx.compose.ui.Modifier.Node getNode();
property public abstract androidx.compose.ui.Modifier.Node node;
diff --git a/compose/ui/ui/samples/src/main/java/androidx/compose/ui/samples/ModifierCompositionLocalSample.kt b/compose/ui/ui/samples/src/main/java/androidx/compose/ui/samples/ModifierCompositionLocalSample.kt
index b98dee2..df7fd7a 100644
--- a/compose/ui/ui/samples/src/main/java/androidx/compose/ui/samples/ModifierCompositionLocalSample.kt
+++ b/compose/ui/ui/samples/src/main/java/androidx/compose/ui/samples/ModifierCompositionLocalSample.kt
@@ -21,7 +21,6 @@
import androidx.compose.material.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.compositionLocalOf
-import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.drawscope.ContentDrawScope
@@ -31,7 +30,6 @@
import androidx.compose.ui.node.currentValueOf
import androidx.compose.ui.platform.InspectorInfo
-@OptIn(ExperimentalComposeUiApi::class)
@Sampled
@Composable
fun CompositionLocalConsumingModifierSample() {
diff --git a/compose/ui/ui/src/androidAndroidTest/kotlin/androidx/compose/ui/node/CompositionLocalModifierNodeTest.kt b/compose/ui/ui/src/androidAndroidTest/kotlin/androidx/compose/ui/node/CompositionLocalModifierNodeTest.kt
index 27cee1b..c11ac21 100644
--- a/compose/ui/ui/src/androidAndroidTest/kotlin/androidx/compose/ui/node/CompositionLocalModifierNodeTest.kt
+++ b/compose/ui/ui/src/androidAndroidTest/kotlin/androidx/compose/ui/node/CompositionLocalModifierNodeTest.kt
@@ -22,7 +22,6 @@
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.setValue
import androidx.compose.runtime.staticCompositionLocalOf
-import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.drawscope.ContentDrawScope
import androidx.compose.ui.layout.Layout
@@ -35,7 +34,6 @@
import org.junit.Test
import org.junit.runner.RunWith
-@OptIn(ExperimentalComposeUiApi::class)
@MediumTest
@RunWith(AndroidJUnit4::class)
class CompositionLocalModifierNodeTest {
@@ -188,7 +186,6 @@
}
}
- @ExperimentalComposeUiApi
private inline fun <reified T : Modifier.Node> modifierNodeElementOf(
crossinline create: () -> T
): ModifierNodeElement<T> = object : ModifierNodeElement<T>() {
diff --git a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/CompositionLocalConsumerModifierNode.kt b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/CompositionLocalConsumerModifierNode.kt
index 647b2dc..d87ed28 100644
--- a/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/CompositionLocalConsumerModifierNode.kt
+++ b/compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/CompositionLocalConsumerModifierNode.kt
@@ -17,7 +17,6 @@
package androidx.compose.ui.node
import androidx.compose.runtime.CompositionLocal
-import androidx.compose.ui.ExperimentalComposeUiApi
import androidx.compose.ui.Modifier
/**
@@ -32,7 +31,6 @@
* @see Modifier.Node
* @see CompositionLocal
*/
-@ExperimentalComposeUiApi
interface CompositionLocalConsumerModifierNode : DelegatableNode
/**
@@ -62,7 +60,6 @@
* before the node is [attached][Modifier.Node.onAttach] or after the node is
* [detached][Modifier.Node.onDetach].
*/
-@ExperimentalComposeUiApi
fun <T> CompositionLocalConsumerModifierNode.currentValueOf(local: CompositionLocal<T>): T {
check(node.isAttached) {
"Cannot read CompositionLocal because the Modifier node is not currently attached. Make " +