Status Update
Comments
he...@google.com <he...@google.com> #2
Project: platform/frameworks/support
Branch: androidx-main
Author: Leland Richardson <
Link:
Add onRectChanged modifier and corresponding callback support to rect tracking
Expand for full commit details
Add onRectChanged modifier and corresponding callback support to rect tracking
Fixes: 372765423
Fixes: 372757007
Fixes: 372994338
Relnote:"""
Added Modifier.onRectChanged API which is an API that allows one to subscribe to the root/window/screen-relative position and size of a
LayoutNode. The API solves many use cases that the existing onGloballyPositioned modifier does, however it does so with much less
overhead and the API comes with facilities to debounce and throttle the callback per what one's use case demands.
"""
Change-Id: Id28c7c6c52ce3b18c9ac8c83cde48111a312cfc9
Files:
- M
compose/ui/ui/api/current.txt
- M
compose/ui/ui/api/restricted_current.txt
- A
compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/layout/OnGlobalRectChangedTest.kt
- M
compose/ui/ui/src/androidInstrumentedTest/kotlin/androidx/compose/ui/layout/OnGloballyPositionedTest.kt
- A
compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/Actual.android.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/spatial/RectListTest.kt
- A
compose/ui/ui/src/androidUnitTest/kotlin/androidx/compose/ui/spatial/ThrottledCallbacksTest.kt
- M
compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/Expect.kt
- A
compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/layout/OnRectChangedModifier.kt
- M
compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/node/MeasureAndLayoutDelegate.kt
- A
compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/spatial/RectInfo.kt
- M
compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/spatial/RectList.kt
- M
compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/spatial/RectManager.kt
- A
compose/ui/ui/src/commonMain/kotlin/androidx/compose/ui/spatial/ThrottledCallbacks.kt
- M
compose/ui/ui/src/commonStubsMain/kotlin/androidx/compose/ui/Actual.commonStubs.kt
Hash: ce33454f34929182e1109f6254144d390f27e7c8
Date: Wed Oct 16 13:18:34 2024
ap...@google.com <ap...@google.com> #3
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.ui:ui:1.8.0-alpha05
androidx.compose.ui:ui-android:1.8.0-alpha05
androidx.compose.ui:ui-jvmstubs:1.8.0-alpha05
androidx.compose.ui:ui-linuxx64stubs:1.8.0-alpha05
he...@google.com <he...@google.com> #4
Hey!
The fix is complete and is on track to go into the next release (ETA March 22nd).
In the meantime, to try this out you can use a snapshot SDK from
Step 1: Add the following maven url line to your build.gradle file.
allprojects {
repositories {
google()
jcenter()
maven { url 'https://androidx.dev/snapshots/builds/9700081/artifacts/repository' }
}
}
Step 2: Depend on the snapshot version artifact:
dependencies {
def work_version = '1.0.0-SNAPSHOT'
implementation "androidx.credentials:credentials-play-services-auth:$work_version"
...
}
pr...@google.com <pr...@google.com> #5
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.credentials:credentials-play-services-auth:1.0.0-alpha05
sh...@gmail.com <sh...@gmail.com> #6
The same error 'CreatePublicKeyCredentialDomException' is thrown with weird error message (errorMessage) - "Unable to get sync account."
va...@shopify.com <va...@shopify.com> #7
I also confirm that the issue still exists in 1.0.0-alpha05
va...@shopify.com <va...@shopify.com> #8
I think the error type changed from ConstraintError to NotAllowedError for alpha05, but still not CreateCredentialCancellationException as expected.
he...@google.com <he...@google.com> #9
It's possible that ConstraintError is thrown once the passkey flow is started. This is according to the webauthn spec:
"If the user does not consent, return an error code equivalent to "NotAllowedError" and terminate the operation."
"If the user exercises a user agent user-interface option to cancel the process" ... "Throw a "NotAllowedError" DOMException."
Therefore, for a passkey request, you should be ready to handle both the CancellationException and the PublicKeyCredentialException(ConstraintError) as a signal for user cancellation.
va...@shopify.com <va...@shopify.com> #10
Therefore, for a passkey request, you should be ready to handle both the CancellationException and the PublicKeyCredentialException(ConstraintError) as a signal for user cancellation.
You mean NotAllowedError
?
he...@google.com <he...@google.com> #11
Oops good catch. Yes by ConstraintError
I meant NotAllowedError
Description
Component used: Credentials
Version used: 1.0.0-alpha03
Devices/Android versions reproduced on: Huawei P30 Pro (VOG-L29)
I have multiple Google accounts on my phone. After triggering the passkey registration modal, I pressed the "Cancel" button and I got a CreatePublicKeyCredentialDomException with ConstraintError instead of the expected CreateCredentialCancellationException
Here are some logs (PasskeyUtils is from my application):