Status Update
Comments
si...@google.com <si...@google.com> #2
Branch: androidx-master-dev
commit c60f33e229e31ab328ef6b59dab63b264954831c
Author: Alexandre Elias <aelias@google.com>
Date: Fri Jul 10 16:23:09 2020
Semantics no-op cleanups
Partly in response to lmr's broad code review, I did a pass of
superficial API/implementation cleanup. The main changes are:
- I changed each Boolean SemanticsProperty where false is equivalent to
not being present to take "Unit" instead. This is conceptually
clearer: it avoids questions like "can I cancel out a semantics from a
merged child by setting it to false?" Because "property = Unit" looks
weird, I also changed the style of these to "property()".
- I moved the Semantics id generator closer to where it's used, in
SemanticsModifierCore. I made it internal and an AtomicInt.
(Note that integer ids are heavily used in the Android
AccessibilityNodeInfo APIs so I can't simply remove them entirely.)
- I deleted dead code. Some examples include SemanticsHintOverrides,
a public API not connected to anything, and SemanticsPropertyKey
merge() open method which is never called. (In both cases I have
a different plan in mind for accessibility.)
Fixes: 145951226
Fixes: 145955412
Test: existing tests
Relnote: "Single-value semantics properties now use a calling style.
For example, 'semantics { hidden = true }' is now written as:
'semantics { hidden() }'."
Change-Id: Ic1afd12ea22c926babc9662f1804d80b33aa0cfc
M ui/integration-tests/benchmark/src/androidTest/java/androidx/ui/benchmark/test/LayoutNodeModifierBenchmark.kt
M ui/ui-core/api/0.1.0-dev15.txt
M ui/ui-core/api/current.txt
M ui/ui-core/api/public_plus_experimental_0.1.0-dev15.txt
M ui/ui-core/api/public_plus_experimental_current.txt
M ui/ui-core/api/restricted_0.1.0-dev15.txt
M ui/ui-core/api/restricted_current.txt
M ui/ui-core/src/androidAndroidTest/kotlin/androidx/ui/graphics/vector/VectorTest.kt
M ui/ui-core/src/androidAndroidTest/kotlin/androidx/ui/semantics/SemanticsTests.kt
M ui/ui-core/src/androidMain/kotlin/androidx/ui/core/AndroidActuals.kt
M ui/ui-core/src/androidMain/kotlin/androidx/ui/core/AndroidComposeView.kt
M ui/ui-core/src/androidMain/kotlin/androidx/ui/core/AndroidComposeViewAccessibilityDelegateCompat.kt
M ui/ui-core/src/androidMain/kotlin/androidx/ui/core/AndroidPopup.kt
M ui/ui-core/src/commonMain/kotlin/androidx/ui/core/Expect.kt
M ui/ui-core/src/commonMain/kotlin/androidx/ui/core/semantics/SemanticsConfiguration.kt
D ui/ui-core/src/commonMain/kotlin/androidx/ui/core/semantics/SemanticsHintOverrides.kt
M ui/ui-core/src/commonMain/kotlin/androidx/ui/core/semantics/SemanticsModifier.kt
M ui/ui-core/src/commonMain/kotlin/androidx/ui/core/semantics/SemanticsNode.kt
M ui/ui-core/src/commonMain/kotlin/androidx/ui/core/semantics/SemanticsOwner.kt
M ui/ui-core/src/commonMain/kotlin/androidx/ui/core/semantics/SemanticsWrapper.kt
M ui/ui-core/src/commonMain/kotlin/androidx/ui/semantics/SemanticsProperties.kt
M ui/ui-foundation/api/0.1.0-dev15.txt
M ui/ui-foundation/api/current.txt
M ui/ui-foundation/api/public_plus_experimental_0.1.0-dev15.txt
M ui/ui-foundation/api/public_plus_experimental_current.txt
M ui/ui-foundation/api/restricted_0.1.0-dev15.txt
M ui/ui-foundation/api/restricted_current.txt
M ui/ui-foundation/src/main/java/androidx/ui/foundation/Clickable.kt
M ui/ui-foundation/src/main/java/androidx/ui/foundation/Dialog.kt
M ui/ui-foundation/src/main/java/androidx/ui/foundation/Scroller.kt
M ui/ui-foundation/src/main/java/androidx/ui/foundation/selection/Selectable.kt
M ui/ui-foundation/src/main/java/androidx/ui/foundation/selection/Toggleable.kt
M ui/ui-foundation/src/main/java/androidx/ui/foundation/semantics/FoundationSemanticsProperties.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/ButtonTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/CardTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/CheckboxScreenshotTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/RadioButtonScreenshotTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/ScaffoldTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/SnackbarTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/SurfaceTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/ripple/RippleIndicationTest.kt
M ui/ui-material/src/androidTest/java/androidx/ui/material/textfield/TextFieldScreenshotTest.kt
M ui/ui-material/src/main/java/androidx/ui/material/AppBar.kt
M ui/ui-material/src/main/java/androidx/ui/material/TextFieldImpl.kt
M ui/ui-test/src/androidTest/java/androidx/ui/test/AssertsTest.kt
M ui/ui-test/src/androidTest/java/androidx/ui/test/CallSemanticsActionTest.kt
M ui/ui-test/src/androidTest/java/androidx/ui/test/ErrorMessagesTest.kt
M ui/ui-test/src/androidTest/java/androidx/ui/test/FindersTest.kt
M ui/ui-test/src/androidTest/java/androidx/ui/test/PrintToStringTest.kt
M ui/ui-test/src/androidTest/java/androidx/ui/test/ScrollToTest.kt
M ui/ui-test/src/androidTest/java/androidx/ui/test/TextActionsTest.kt
M ui/ui-test/src/main/java/androidx/ui/test/Actions.kt
M ui/ui-test/src/main/java/androidx/ui/test/Filters.kt
M ui/ui-text/api/0.1.0-dev15.txt
M ui/ui-text/api/current.txt
M ui/ui-text/api/public_plus_experimental_0.1.0-dev15.txt
M ui/ui-text/api/public_plus_experimental_current.txt
M ui/ui-text/api/restricted_0.1.0-dev15.txt
M ui/ui-text/api/restricted_current.txt
M ui/ui-text/src/commonMain/kotlin/androidx/ui/text/CoreTextField.kt
M ui/ui-text/src/commonMain/kotlin/androidx/ui/text/TextSemanticsProperties.kt
si...@google.com <si...@google.com>
si...@google.com <si...@google.com>
di...@google.com <di...@google.com> #3
di...@google.com <di...@google.com> #4 Restricted
di...@google.com <di...@google.com> #5
Nevermind. Sorry about my last comment. Thanks for making me realize the bug is public. I'll share it with partners to gauge their interest through their +1s.
ju...@gmail.com <ju...@gmail.com> #6
Is there any progress on this issue?
no...@gmail.com <no...@gmail.com> #7
According to [¡a conversation from the Compose slack channel on May 2021(see
Now that the support for downloadable fonts in Compose is fixed (April 2022), what is the state of the Emoji compatibility in Compose?
se...@google.com <se...@google.com> #8
Yep, static text integration is unblocked.
Editable text will take more work.
se...@google.com <se...@google.com> #9
Doing planning now, will take comment as a vote for priority :)
bu...@google.com <bu...@google.com> #11
br...@gmail.com <br...@gmail.com> #12
+1 🙏
ap...@google.com <ap...@google.com> #14
Branch: androidx-main
commit 358ce0cf2083f6d0e2e2a0897c860a6c1b71b514
Author: Sean McQuillan <seanmcq@google.com>
Date: Mon Nov 07 15:37:22 2022
Support for EmojiCompat in Compose
Add support for EmojiCompat for all Text and TextField in compose
This adds support for EmojiCompat to all Compose based applications.
EmojiCompat configuration must be done outside of Compose, and the global EmojiCompat config will be used.
This change enables automatic configuration of EmojiCompat to compose :ui:ui-text, similar to the configuration in appcompat.
Apps that wish to configure emojicompat monually should continue to disable [EmojiCompatIniitalizer] in their manifest.
Changes:
* Text, BasicText, *TextField, BasicTextField will all now call EmojiCompat.process as needed
* If EmojiCompat loads the font after a Paragraph or MultiParagraph is create, [hasStaleReslovedFonts] will become true
Bug:
Test: ./gradlew :com:ui:ui-text:cAT
Relnote: "Added EmojiCompat to Compose"
Change-Id: Ibf6f9f9d37c6280fe1b051269b127f0dfb1d6b6a
A compose/foundation/foundation/integration-tests/foundation-demos/src/main/java/androidx/compose/foundation/demos/text/EmojiCompatDemo.kt
M compose/foundation/foundation/integration-tests/foundation-demos/src/main/java/androidx/compose/foundation/demos/text/TextDemos.kt
M compose/ui/ui-text/api/current.txt
M compose/ui/ui-text/api/public_plus_experimental_current.txt
M compose/ui/ui-text/api/restricted_current.txt
M compose/ui/ui-text/build.gradle
A compose/ui/ui-text/src/androidAndroidTest/kotlin/androidx/compose/ui/text/platform/AndroidParagraphIntrinsicsTest.kt
A compose/ui/ui-text/src/androidAndroidTest/kotlin/androidx/compose/ui/text/platform/EmojiCompatStatusTest.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/platform/AndroidParagraphHelper.android.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/platform/AndroidParagraphIntrinsics.android.kt
A compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/platform/EmojiCompatStatus.kt
ap...@google.com <ap...@google.com> #15
Branch: androidx-main
commit e5c660680805acb637b7a8b7ee26ba168562ef1f
Author: zzeng <zzeng@google.com>
Date: Mon Nov 21 16:08:50 2022
Let EmojiCompat supports returning emoji boundaries.
This is part of the effort to make Compose Apps use EmojiCompat to determine cursor movement or deletion.
Bug:
Test: ./gradlew :emoji2:emoji2:cAT
Relnote: "Added EmojiCompat to Compose"
Change-Id: I96f37bd992fc8cf305e4cb5e3bbe9ea3be19e52b
M emoji2/emoji2/api/current.txt
M emoji2/emoji2/api/public_plus_experimental_current.txt
M emoji2/emoji2/api/restricted_current.txt
M emoji2/emoji2/src/androidTest/java/androidx/emoji2/text/EmojiProcessorTest.java
M emoji2/emoji2/src/main/java/androidx/emoji2/text/EmojiCompat.java
M emoji2/emoji2/src/main/java/androidx/emoji2/text/EmojiProcessor.java
ap...@google.com <ap...@google.com> #16
Branch: androidx-main
commit 42039d57d8357094bdacb901d28689ba55b99d92
Author: zzeng <zzeng@google.com>
Date: Fri Dec 02 15:34:12 2022
Support for EmojiCompat in Compose
Add support for cursor movement and deletion by EmojiCompat in Compose.
Bug: 139326806
Test: NA
Change-Id: I34773512ffbfaddbd796e8b9c33447e114b9a651
M compose/foundation/foundation/build.gradle
M compose/foundation/foundation/src/androidMain/kotlin/androidx/compose/foundation/text/StringHelpers.android.kt
M settings.gradle
ap...@google.com <ap...@google.com> #17
Branch: androidx-main
commit 5f032489693eed2771265c47da815a908b4a06fb
Author: Sean McQuillan <seanmcq@google.com>
Date: Thu Dec 08 14:54:39 2022
Add EmojiCompat editorInfo when configured
Bug:
Test: ./gradlew :com:ui:ui:cAT
Change-Id: Ic121f989d549309058c36fd54fd3caa50f23f172
M compose/ui/ui/build.gradle
A compose/ui/ui/src/androidAndroidTest/kotlin/androidx/compose/ui/input/TextInputServiceAndroidEmojiTest.kt
M compose/ui/ui/src/androidMain/kotlin/androidx/compose/ui/text/input/TextInputServiceAndroid.android.kt
ap...@google.com <ap...@google.com> #18
Branch: androidx-main
commit 5b20374ecd983e5078f8ea6852ae60888d2007e4
Author: Sean McQuillan <seanmcq@google.com>
Date: Thu Dec 15 15:56:42 2022
PlatformParagraphStyle to disable emoji processing for a Paragraph.
Fixes:
Test: ./gradlew :com:ui:ui-text:cAT
Relnote: "Add PlatformTextStyle(emojiSupportMatch) to optionally disable emoji support processing for a single Paragraph."
Change-Id: Ia710096395ecfe4bbd986326882331e0a7e6a74d
M compose/ui/ui-text/api/current.txt
M compose/ui/ui-text/api/public_plus_experimental_current.txt
M compose/ui/ui-text/api/restricted_current.txt
M compose/ui/ui-text/src/androidAndroidTest/kotlin/androidx/compose/ui/text/PlatformParagraphStyleTest.kt
M compose/ui/ui-text/src/androidAndroidTest/kotlin/androidx/compose/ui/text/PlatformTextStyleTest.kt
M compose/ui/ui-text/src/androidAndroidTest/kotlin/androidx/compose/ui/text/platform/AndroidParagraphIntrinsicsTest.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/AndroidTextStyle.android.kt
A compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/EmojiSupportMatch.kt
M compose/ui/ui-text/src/androidMain/kotlin/androidx/compose/ui/text/platform/AndroidParagraphIntrinsics.android.kt
na...@google.com <na...@google.com> #19
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.foundation:foundation:1.4.0-alpha04
androidx.compose.ui:ui:1.4.0-alpha04
androidx.compose.ui:ui-text:1.4.0-alpha04
androidx.emoji2:emoji2:1.3.0-alpha01
Description
No description yet.