Fixed
Status Update
Comments
ju...@google.com <ju...@google.com>
nj...@google.com <nj...@google.com>
ap...@google.com <ap...@google.com> #2
Project: platform/frameworks/support
Branch: androidx-main
commit 755b3f1f06c682b37c39b7bf3b80bccb638b642d
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 23:43:23 2024
GraphicsLayer API Part 4/N
Relnote: "Update Compose framework to expose a
GraphicsContext composition local alongside
updating Owner, DelegateableNode and drawWithCache
Modifier implementations to expose access to the
GraphicsContext for scoped access that will automatically
cleanup GraphicsLayer instances when Modifiers are torn
down."
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest
Change-Id: I64a2f6a2e156f9305fe32ac2a6f9be2b61f7f0ed
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.kt
M compose/ui/ui-unit/api/current.txt
M compose/ui/ui-unit/api/restricted_current.txt
M compose/ui/ui-unit/src/androidUnitTest/kotlin/androidx/compose/ui/unit/IntSizeTest.kt
M compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntSize.kt
M compose/ui/ui/api/current.txt
M compose/ui/ui/api/restricted_current.txt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/input/pointer/HitPathTrackerTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/input/pointer/PointerInputEventProcessorTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/layout/Helpers.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/node/NodeChainTester.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidComposeView.android.kt
M compose/ui/ui/src/androidUnitTest/kotlin/androidx/compose/ui/node/LayoutNodeTest.kt
M compose/ui/ui/src/androidUnitTest/kotlin/androidx/compose/ui/node/ModifierLocalConsumerEntityTest.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/DrawModifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsLayerScope.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/DelegatableNode.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/Owner.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/platform/CompositionLocals.kt
M compose/ui/ui/src/skikoMain/kotlin/androidx/compose/ui/platform/SkiaBasedOwner.skiko.kt
https://android-review.googlesource.com/2960247
Branch: androidx-main
commit 755b3f1f06c682b37c39b7bf3b80bccb638b642d
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 23:43:23 2024
GraphicsLayer API Part 4/N
Relnote: "Update Compose framework to expose a
GraphicsContext composition local alongside
updating Owner, DelegateableNode and drawWithCache
Modifier implementations to expose access to the
GraphicsContext for scoped access that will automatically
cleanup GraphicsLayer instances when Modifiers are torn
down."
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest
Change-Id: I64a2f6a2e156f9305fe32ac2a6f9be2b61f7f0ed
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.kt
M compose/ui/ui-unit/api/current.txt
M compose/ui/ui-unit/api/restricted_current.txt
M compose/ui/ui-unit/src/androidUnitTest/kotlin/androidx/compose/ui/unit/IntSizeTest.kt
M compose/ui/ui-unit/src/commonMain/kotlin/androidx/compose/ui/unit/IntSize.kt
M compose/ui/ui/api/current.txt
M compose/ui/ui/api/restricted_current.txt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/input/pointer/HitPathTrackerTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/input/pointer/PointerInputEventProcessorTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/layout/Helpers.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/node/NodeChainTester.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/AndroidComposeView.android.kt
M compose/ui/ui/src/androidUnitTest/kotlin/androidx/compose/ui/node/LayoutNodeTest.kt
M compose/ui/ui/src/androidUnitTest/kotlin/androidx/compose/ui/node/ModifierLocalConsumerEntityTest.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/DrawModifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsLayerScope.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/DelegatableNode.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/Owner.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/platform/CompositionLocals.kt
M compose/ui/ui/src/skikoMain/kotlin/androidx/compose/ui/platform/SkiaBasedOwner.skiko.kt
ap...@google.com <ap...@google.com> #3
Project: platform/frameworks/support
Branch: androidx-main
commit 88951ea1f54623398ffdac8a24e35db3fbfeeb8a
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 22:54:56 2024
GraphicsLayer API Part 3/N
Relnote: "Introduce GraphicsContext function constructor
to create a factory to create GraphicsLayer instances"
Created GraphicsLayerV29 as the RenderNode backed
GraphicsLayer for Android
Bug: 288494724
Test: Added AndroidGraphicsLayerTest
Change-Id: Ib98d6b140fab3d857f74faa4fa227927e1625bed
M compose/ui/ui-graphics/api/current.txt
M compose/ui/ui-graphics/api/restricted_current.txt
A compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV29.android.kt
https://android-review.googlesource.com/2960246
Branch: androidx-main
commit 88951ea1f54623398ffdac8a24e35db3fbfeeb8a
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 22:54:56 2024
GraphicsLayer API Part 3/N
Relnote: "Introduce GraphicsContext function constructor
to create a factory to create GraphicsLayer instances"
Created GraphicsLayerV29 as the RenderNode backed
GraphicsLayer for Android
Bug: 288494724
Test: Added AndroidGraphicsLayerTest
Change-Id: Ib98d6b140fab3d857f74faa4fa227927e1625bed
M compose/ui/ui-graphics/api/current.txt
M compose/ui/ui-graphics/api/restricted_current.txt
A compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV29.android.kt
ap...@google.com <ap...@google.com> #4
Project: platform/frameworks/support
Branch: androidx-main
commit 25e6f1b21e6136f816097bd0b7e395d81cbaaaa6
Author: Nader Jawad <njawad@google.com>
Date: Tue Mar 05 14:16:52 2024
GraphicsLayer API Part 5/N
Introduce LayerManager as an internal
mechanism for persisting of GraphicsLayer
displaylists by invoking a placeholder render
with empty content within the layer in order
to increment the internal ref count of RenderNode
instances within HWUI.
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest
Change-Id: I52203a1bca59ea024cb7dfa665994a7ccc573756
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/LayerManager.android.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
https://android-review.googlesource.com/2961822
Branch: androidx-main
commit 25e6f1b21e6136f816097bd0b7e395d81cbaaaa6
Author: Nader Jawad <njawad@google.com>
Date: Tue Mar 05 14:16:52 2024
GraphicsLayer API Part 5/N
Introduce LayerManager as an internal
mechanism for persisting of GraphicsLayer
displaylists by invoking a placeholder render
with empty content within the layer in order
to increment the internal ref count of RenderNode
instances within HWUI.
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest
Change-Id: I52203a1bca59ea024cb7dfa665994a7ccc573756
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/LayerManager.android.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
ap...@google.com <ap...@google.com> #5
Project: platform/frameworks/support
Branch: androidx-main
commit 55240af3dcdb65f46679c8840f9b6148034bc7e0
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 22:13:31 2024
GraphicsLayer API Part 2/N
Relnote: "Exposed GraphicsLayer API
to provide developer defined flexibility
in capturing drawing commands that can be
used to draw elsewhere and also apply
different visual effects to the end result."
Introduced AndroidGraphicsLayer actual
implementation with interface definition
to abstract away differences between different
Android API levels.
Added placeholder Desktop GraphicsLayer implementation
to be completed in a subsequent CL.
Bug: 288494724
Test: Added with Android GraphicsLayer implementation
Change-Id: I802452c9375fc6949ed85fb65d77173456893907
M compose/ui/ui-graphics/api/current.txt
M compose/ui/ui-graphics/api/restricted_current.txt
A compose/ui/ui-graphics/samples/src/main/java/androidx/compose/ui/graphics/samples/GraphicsLayerSamples.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsContext.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.kt
A compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/CompositingStrategy.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.kt
A compose/ui/ui-graphics/src/desktopMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.desktop.kt
https://android-review.googlesource.com/2960245
Branch: androidx-main
commit 55240af3dcdb65f46679c8840f9b6148034bc7e0
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 22:13:31 2024
GraphicsLayer API Part 2/N
Relnote: "Exposed GraphicsLayer API
to provide developer defined flexibility
in capturing drawing commands that can be
used to draw elsewhere and also apply
different visual effects to the end result."
Introduced AndroidGraphicsLayer actual
implementation with interface definition
to abstract away differences between different
Android API levels.
Added placeholder Desktop GraphicsLayer implementation
to be completed in a subsequent CL.
Bug: 288494724
Test: Added with Android GraphicsLayer implementation
Change-Id: I802452c9375fc6949ed85fb65d77173456893907
M compose/ui/ui-graphics/api/current.txt
M compose/ui/ui-graphics/api/restricted_current.txt
A compose/ui/ui-graphics/samples/src/main/java/androidx/compose/ui/graphics/samples/GraphicsLayerSamples.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsContext.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.kt
A compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/CompositingStrategy.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.kt
A compose/ui/ui-graphics/src/desktopMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.desktop.kt
ap...@google.com <ap...@google.com> #6
Project: platform/frameworks/support
Branch: androidx-main
commit e32ca4769a50717045b75f9cd7bb1436fe48a751
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 21:44:06 2024
GraphicsLayer API Part 1/N
Relnote: "Added GraphicsLayer expect/actual
API defintion to support capturing and replaying
of drawing commands with optional compositing
visual effects and transforms.
Introduce GraphicsContext interface to contain
graphics dependencies including creation and
management of GraphicsLayer instances.
"
Bug: 288494724
Test: Added with expect/actual implementation
Change-Id: I4a8d67d7b45798d5e8afa78402168d14512e4318
A compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsContext.kt
A compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.kt
https://android-review.googlesource.com/2960092
Branch: androidx-main
commit e32ca4769a50717045b75f9cd7bb1436fe48a751
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 21:44:06 2024
GraphicsLayer API Part 1/N
Relnote: "Added GraphicsLayer expect/actual
API defintion to support capturing and replaying
of drawing commands with optional compositing
visual effects and transforms.
Introduce GraphicsContext interface to contain
graphics dependencies including creation and
management of GraphicsLayer instances.
"
Bug: 288494724
Test: Added with expect/actual implementation
Change-Id: I4a8d67d7b45798d5e8afa78402168d14512e4318
A compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsContext.kt
A compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.kt
ap...@google.com <ap...@google.com> #7
Project: platform/frameworks/support
Branch: androidx-main
commit 1e39396a77297efa4a5a2e4d49e49b7e86b44593
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 23:09:08 2024
GraphicsLayer API Part 6/N
Added Android GraphicsLayer implementation for
Android API level 23+ leveraging RenderNode stubs
Updated ViewCapture.android.kt to remove the API
level requirement for capturing View content to a
bitmap for testing scenarios
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest on Android API 23
Change-Id: I8013c73b7d115b49bacb5ecdb67c731094262580
M compose/ui/ui-graphics/build.gradle
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV23.android.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
https://android-review.googlesource.com/2960093
Branch: androidx-main
commit 1e39396a77297efa4a5a2e4d49e49b7e86b44593
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 23:09:08 2024
GraphicsLayer API Part 6/N
Added Android GraphicsLayer implementation for
Android API level 23+ leveraging RenderNode stubs
Updated ViewCapture.android.kt to remove the API
level requirement for capturing View content to a
bitmap for testing scenarios
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest on Android API 23
Change-Id: I8013c73b7d115b49bacb5ecdb67c731094262580
M compose/ui/ui-graphics/build.gradle
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV23.android.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
ap...@google.com <ap...@google.com> #8
Project: platform/frameworks/support
Branch: androidx-main
commit f8340787db926919283189376e67e0ea8247b214
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 23:23:04 2024
GraphicsLayer API Part 7/N
Added View backed GraphicsLayer implementation
for Android L/P and as a fallback for Android devices
that do not support the RenderNode stub approach.
Updated AndroidGraphicsContext to return View backed
graphics layers.
Moved resource identifier for Views used as layers
to the ui-graphics module.
Relnote: "Introduced HardwareCanvas stub for
Android L usage"
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest on Android L
Change-Id: I1c3b5821c20f51b9c8ae96f81c822174583251b7
M compose/material/material-ripple/build.gradle
M compose/material/material-ripple/src/androidMain/kotlin/androidx/compose/material/ripple/RippleContainer.android.kt
M compose/ui/ui-android-stubs/api/current.txt
M compose/ui/ui-android-stubs/api/restricted_current.txt
A compose/ui/ui-android-stubs/src/main/java/android/view/HardwareCanvas.java
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsViewLayer.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/view/PlaceholderHardwareCanvas.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/view/ViewLayerContainer.android.kt
A compose/ui/ui-graphics/src/androidMain/res/values/ids.xml
M compose/ui/ui-inspection/build.gradle
M compose/ui/ui-inspection/src/main/java/androidx/compose/ui/inspection/compose/AndroidComposeViewWrapper.kt
M compose/ui/ui-tooling/build.gradle
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/ViewLayerContainer.android.kt
M compose/ui/ui/src/androidMain/res/values/ids.xml
https://android-review.googlesource.com/2960094
Branch: androidx-main
commit f8340787db926919283189376e67e0ea8247b214
Author: Nader Jawad <njawad@google.com>
Date: Mon Feb 12 23:23:04 2024
GraphicsLayer API Part 7/N
Added View backed GraphicsLayer implementation
for Android L/P and as a fallback for Android devices
that do not support the RenderNode stub approach.
Updated AndroidGraphicsContext to return View backed
graphics layers.
Moved resource identifier for Views used as layers
to the ui-graphics module.
Relnote: "Introduced HardwareCanvas stub for
Android L usage"
Bug: 288494724
Test: Ran AndroidGraphicsLayerTest on Android L
Change-Id: I1c3b5821c20f51b9c8ae96f81c822174583251b7
M compose/material/material-ripple/build.gradle
M compose/material/material-ripple/src/androidMain/kotlin/androidx/compose/material/ripple/RippleContainer.android.kt
M compose/ui/ui-android-stubs/api/current.txt
M compose/ui/ui-android-stubs/api/restricted_current.txt
A compose/ui/ui-android-stubs/src/main/java/android/view/HardwareCanvas.java
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsViewLayer.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/view/PlaceholderHardwareCanvas.android.kt
A compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/view/ViewLayerContainer.android.kt
A compose/ui/ui-graphics/src/androidMain/res/values/ids.xml
M compose/ui/ui-inspection/build.gradle
M compose/ui/ui-inspection/src/main/java/androidx/compose/ui/inspection/compose/AndroidComposeViewWrapper.kt
M compose/ui/ui-tooling/build.gradle
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/ViewLayerContainer.android.kt
M compose/ui/ui/src/androidMain/res/values/ids.xml
nj...@google.com <nj...@google.com>
ap...@google.com <ap...@google.com> #9
Project: platform/frameworks/support
Branch: androidx-main
commit 49d0d5cb25a6b493e0c20dee322e377519d9da5f
Author: Nader Jawad <njawad@google.com>
Date: Tue Feb 13 12:23:39 2024
GraphicsLayer API Part 8/N
Introduce Compose Desktop GraphicsLayer
implementation
Bug: 288494724
Test: Added DesktopGraphicsLayerTest
Change-Id: I05f5190e8118ccbd2c26e260e6f6ae2f20f013db
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
M compose/ui/ui-graphics/src/desktopMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.desktop.kt
A compose/ui/ui-graphics/src/desktopTest/kotlin/androidx/compose/ui/graphics/layer/DesktopGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/skikoMain/kotlin/androidx/compose/ui/graphics/SkiaBackedCanvas.skiko.kt
https://android-review.googlesource.com/2961886
Branch: androidx-main
commit 49d0d5cb25a6b493e0c20dee322e377519d9da5f
Author: Nader Jawad <njawad@google.com>
Date: Tue Feb 13 12:23:39 2024
GraphicsLayer API Part 8/N
Introduce Compose Desktop GraphicsLayer
implementation
Bug: 288494724
Test: Added DesktopGraphicsLayerTest
Change-Id: I05f5190e8118ccbd2c26e260e6f6ae2f20f013db
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
M compose/ui/ui-graphics/src/desktopMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.desktop.kt
A compose/ui/ui-graphics/src/desktopTest/kotlin/androidx/compose/ui/graphics/layer/DesktopGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/skikoMain/kotlin/androidx/compose/ui/graphics/SkiaBackedCanvas.skiko.kt
pr...@google.com <pr...@google.com> #10
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.material:material-ripple:1.7.0-alpha05
androidx.compose.material:material-ripple-android:1.7.0-alpha05
androidx.compose.material:material-ripple-desktop:1.7.0-alpha05
androidx.compose.ui:ui:1.7.0-alpha05
androidx.compose.ui:ui-android:1.7.0-alpha05
androidx.compose.ui:ui-android-stubs:1.7.0-alpha05
androidx.compose.ui:ui-desktop:1.7.0-alpha05
androidx.compose.ui:ui-graphics:1.7.0-alpha05
androidx.compose.ui:ui-graphics-android:1.7.0-alpha05
androidx.compose.ui:ui-graphics-desktop:1.7.0-alpha05
androidx.compose.ui:ui-tooling:1.7.0-alpha05
androidx.compose.ui:ui-tooling-android:1.7.0-alpha05
androidx.compose.ui:ui-tooling-desktop:1.7.0-alpha05
androidx.compose.ui:ui-unit:1.7.0-alpha05
androidx.compose.ui:ui-unit-android:1.7.0-alpha05
androidx.compose.ui:ui-unit-desktop:1.7.0-alpha05
tj...@gmail.com <tj...@gmail.com> #11
The implementation of placeAt
in the linked CL on line 118, the overloaded method call does not seem to do anything with the passed in GraphicsLayer
:
protected open fun placeAt(
position: IntOffset,
zIndex: Float,
layer: GraphicsLayer
) {
placeAt(position, zIndex, null)
}
When I tested on the latest snapshot, passing in a GraphicsLayer
was a no-op. I'm not sure if this is a bug, or it is supposed to be addressed in a follow up CL.
ap...@google.com <ap...@google.com> #13
Project: platform/frameworks/support
Branch: androidx-main
commit 6bb3dd89bf83fc4d6f2825effb2f0fc613c94774
Author: Nader Jawad <njawad@google.com>
Date: Wed Mar 27 18:43:56 2024
Update GraphicsLayer API based on Compose Design
Review feedback
Relnote: "Rename GraphicsLayer#buildLayer to
record to mirror the begin/endRecording methods of
Displaylist backed APIs like RenderNode and Picture.
Updated rememberGraphicsLayer to leverage rememberObserver."
Bug: 288494724
Fixes: 330758155
Test: re-ran compose tests
Change-Id: I312c1120358d04fccfe8a646001a883017fb0fb3
M compose/ui/ui-graphics/api/current.txt
M compose/ui/ui-graphics/api/restricted_current.txt
M compose/ui/ui-graphics/samples/src/main/java/androidx/compose/ui/graphics/samples/GraphicsLayerSamples.kt
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV23.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV29.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsViewLayer.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/LayerSnapshot.android.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.kt
M compose/ui/ui-graphics/src/desktopMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.desktop.kt
M compose/ui/ui-graphics/src/desktopTest/kotlin/androidx/compose/ui/graphics/layer/DesktopGraphicsLayerTest.kt
M compose/ui/ui/api/current.txt
M compose/ui/ui/api/restricted_current.txt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawingPrebuiltGraphicsLayerTest.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/GraphicsLayerOwnerLayer.android.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/DrawModifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsLayerScope.kt
M compose/ui/ui/src/desktopTest/kotlin/androidx/compose/ui/draw/DesktopDrawingPrebuiltGraphicsLayerTest.kt
https://android-review.googlesource.com/3016903
Branch: androidx-main
commit 6bb3dd89bf83fc4d6f2825effb2f0fc613c94774
Author: Nader Jawad <njawad@google.com>
Date: Wed Mar 27 18:43:56 2024
Update GraphicsLayer API based on Compose Design
Review feedback
Relnote: "Rename GraphicsLayer#buildLayer to
record to mirror the begin/endRecording methods of
Displaylist backed APIs like RenderNode and Picture.
Updated rememberGraphicsLayer to leverage rememberObserver."
Bug: 288494724
Fixes: 330758155
Test: re-ran compose tests
Change-Id: I312c1120358d04fccfe8a646001a883017fb0fb3
M compose/ui/ui-graphics/api/current.txt
M compose/ui/ui-graphics/api/restricted_current.txt
M compose/ui/ui-graphics/samples/src/main/java/androidx/compose/ui/graphics/samples/GraphicsLayerSamples.kt
M compose/ui/ui-graphics/src/androidInstrumentedTest/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayerTest.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/AndroidGraphicsContext.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/AndroidGraphicsLayer.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV23.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayerV29.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsViewLayer.android.kt
M compose/ui/ui-graphics/src/androidMain/kotlin/androidx/compose/ui/graphics/layer/LayerSnapshot.android.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.kt
M compose/ui/ui-graphics/src/commonMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.kt
M compose/ui/ui-graphics/src/desktopMain/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer.desktop.kt
M compose/ui/ui-graphics/src/desktopTest/kotlin/androidx/compose/ui/graphics/layer/DesktopGraphicsLayerTest.kt
M compose/ui/ui/api/current.txt
M compose/ui/ui/api/restricted_current.txt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawModifierTest.kt
M compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/draw/DrawingPrebuiltGraphicsLayerTest.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/platform/GraphicsLayerOwnerLayer.android.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/draw/DrawModifier.kt
M compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/graphics/GraphicsLayerScope.kt
M compose/ui/ui/src/desktopTest/kotlin/androidx/compose/ui/draw/DesktopDrawingPrebuiltGraphicsLayerTest.kt
na...@google.com <na...@google.com> #14
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.ui:ui:1.7.0-alpha07
androidx.compose.ui:ui-android:1.7.0-alpha07
androidx.compose.ui:ui-desktop:1.7.0-alpha07
androidx.compose.ui:ui-graphics:1.7.0-alpha07
androidx.compose.ui:ui-graphics-android:1.7.0-alpha07
androidx.compose.ui:ui-graphics-desktop:1.7.0-alpha07
Description
Per Nader's suggestion, `OwnedLayer` is already being used for handling drawing and is in commonMain. If we expose a subset of functionalities of `OwnedLayer`, shared element will be able to leverage their existing layer and render it elsewhere.