Status Update
Comments
na...@gmail.com <na...@gmail.com> #2
Branch: androidx-main
commit cb1afd67dacbf14cd22206c6f5b543dbf18cec1f
Author: Tony Mak <tonymak@google.com>
Date: Thu Jan 06 14:52:58 2022
Deprecate all the APIs in textclassifier
Bug: 210509084
Test: Check api/current.txt and ensure all classes are deprecated
Relnote: "Deprecate all the APIs in the textclassifier module"
Change-Id: Idc18063196531c0e926162fefeadf2dc5f559da1
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextSelection.java
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextLinks.java
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextClassificationSessionId.java
M textclassifier/textclassifier/api/public_plus_experimental_current.txt
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextClassification.java
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextClassificationManager.java
M textclassifier/textclassifier/api/current.txt
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextClassificationContext.java
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextLinksParams.java
M textclassifier/textclassifier/api/restricted_current.txt
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/ConversationAction.java
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/TextClassifier.java
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/ConversationActions.java
M textclassifier/textclassifier/src/main/java/androidx/textclassifier/ExtrasUtils.java
si...@google.com <si...@google.com>
si...@google.com <si...@google.com>
so...@google.com <so...@google.com> #3
Is there any update when the alpha04 will be available? We need it to target api 31 because of the PendingIntent mutability flags missing in alpha03.
na...@gmail.com <na...@gmail.com> #4
I'll schedule it for the next release. Note that alpha04
is a complete turn-down of the library where all APIs are marked as Deprecated
, so you'll also want to start removing your usages of the library.
na...@gmail.com <na...@gmail.com> #5
Branch: androidx-main
commit 19ed7e69823a09f3c63f8c8cdf339af8ca1645ab
Author: Alan Viverette <alanv@google.com>
Date: Mon Mar 14 15:18:16 2022
Bump textclassifier for final release and turn-down
Bug: 210509084
Change-Id: Ib8b2386903bb49baa3211f7de7fe1587fdda1483
Test: ./gradlew checkApi
M libraryversions.toml
so...@google.com <so...@google.com> #6
Bugjuggler: wait until 2022-03-23
na...@gmail.com <na...@gmail.com> #7
so...@google.com <so...@google.com>
si...@google.com <si...@google.com> #8
Is there a replacement or should we just abandon TextClassifier for android older than API Level 26 ?
an...@google.com <an...@google.com> #9
Abandon. The owning team had no plans to release a replacement library.
si...@google.com <si...@google.com> #10
The delayed recompose does not fit to the current execution model of TF. TF expects the value to be set or not set; but not a delay. In the current case we can't handle delayed "resets" (since meanwhile user writes something and the new value is basically a reset).
Adam, Leland, I still need to read some documents but is this related to the current coroutine effort? If not do you have any opinions on how to solve the issue.
an...@google.com <an...@google.com> #11
si...@google.com <si...@google.com>
si...@google.com <si...@google.com> #12
checked this. it is either not possible or not worth a change or trick with the current TextFieldValue API. We are planning to change that API and will consider this as a part of it.
si...@google.com <si...@google.com>
si...@google.com <si...@google.com>
na...@gmail.com <na...@gmail.com> #13
Since there should be no major API changes anytime soon now, what's the status on this issue?
si...@google.com <si...@google.com>
ji...@gmail.com <ji...@gmail.com> #14
ma...@gmail.com <ma...@gmail.com> #15
This still happens in Compose 1.3.0-alpha02, see duplicated issues for new steps and code (
This seems like a pretty big oversight as it makes validation of the text fields (such as preventing user from entering more than N characters) very bad experience for the user. And no responses since 2020...
ub...@gmail.com <ub...@gmail.com> #16
This is easily worked around by using the constructor that takes a TextFieldValue as value, but should be fixed nonetheless.
I would be very interested in the reporter's "easy workaround" using the TextFieldValue
constructor. How does that work? When I'm trying to use it, I'm only able to enter one char as a user and no more...
ub...@gmail.com <ub...@gmail.com> #17
I hacked around the issue in the following way:
Before:
// asyncSource comes from the View Model and is changed via `changeText()`
OutlinedTextField(
value = asyncSource.data,
onValueChange = {
viewModel.changeText(it)
}
)
After:
// asyncSource comes from the View Model and is changed via `changeText()`
var inputText by remember(asyncSource.data) { mutableStateOf(asyncSource.data) }
OutlinedTextField(
value = inputText,
onValueChange = {
inputText = it
viewModel.changeText(it)
}
)
I recognize that this is actually duplicating some of the logic, but I didn't have the jumping cursor issue anymore and still retain all flexibility of using asynchronous handling in my View Model and as a data source for the UI.
da...@facile.it <da...@facile.it> #18
Hi, this is a 2020 bug which has undirectely been pointed out also in this ->
Please, at least start to work on this issue.
si...@google.com <si...@google.com> #19
Thanks for the comment.
The team already has started working on general structure of the TextField API since the current API and structure does not allow us to move forward with this ticket.
si...@google.com <si...@google.com> #20
updated the assignee (one of Halil, Zach but can set only one), and also the priority to communicate that the work is ongoing in buganizer.
ro...@oda.com <ro...@oda.com> #21
Hey, regarding this issue, i also notified that :
D/InsetsController: show(ime(), fromIme=true)
is called infinite times, when the mutableState is in the viewModel and i start writing in the textField.
On some devices it work, on others you are stuck after the first character.
Is this fix going to be in 1.4.0 final?
va...@gmail.com <va...@gmail.com> #22
ha...@google.com <ha...@google.com> #23
Yes, the work on this bug and related issues regarding TextField state was started a while ago. 1.5-alpha01
release includes some of this work.
It's unlikely that anything will be finalized in one release-cycle but the upcoming changes will be initially released as Experimental. So, the iterative changes won't be confined to alpha releases.
se...@gmail.com <se...@gmail.com> #24
The solution in post #18 seems to work for me. Hoping this will be fixed soon officially.
da...@decathlon.com <da...@decathlon.com> #25
thanks
st...@gmail.com <st...@gmail.com> #27
kl...@google.com <kl...@google.com> #29
Closing this since async onValueChange updates are not supported and will continue to not be supported.
ma...@gmail.com <ma...@gmail.com> #30
ap...@google.com <ap...@google.com> #32
Branch: androidx-main
commit 125070eab17fd3d941e8718ec8a5b9b0d88ee3b4
Author: Zach Klippenstein <klippenstein@google.com>
Date: Wed Oct 04 13:14:11 2023
Kdoc polish for BasicTextField.
- Moved all sample links to the bottom. When rendering kdoc, Studio
doesn't render code samples inline, it places them all at the end. Any
text that comes after the first sample link is not rendered at all. So
any important documentation must come before the first sample link or
it will not be shown when users are viewing docs in Studio.
- Cleaned up wording of state management caveats. Our async requirements
weren't obvious, so I stated them explicitly and linked to our more
detailed guide.
Relnote: "Improved documentation on `BasicTextField` regarding
`onValueChange` requirements."
Test: n/a
Bug:
Change-Id: I90fc9dea845dafbf35fd439fe7813b2a752d9189
M compose/foundation/foundation/src/commonMain/kotlin/androidx/compose/foundation/text/BasicTextField.kt
pr...@google.com <pr...@google.com> #33
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.compose.foundation:foundation:1.6.0-alpha08
androidx.compose.foundation:foundation-android:1.6.0-alpha08
androidx.compose.foundation:foundation-desktop:1.6.0-alpha08
Description
Steps to reproduce:
1. Use OutlinedTextField with the String-based constructor in any composable function
2. Type something long (a sentence or something) into the field
3. Observe the cursor randomly being placed before the letter that was just typed
This is easily worked around by using the constructor that takes a TextFieldValue as value, but should be fixed nonetheless.