Any "touch" interaction now hides selection (since mouse
doesn't enable touch-mode, this wasn't happening anymore;
also, allowing listview to scroll an actual selection
off-screen would be very involved and risky).
The selector hilight remains (since mouse doesn't enter
touch-mode). This is a new scenario, so this change also
makes sure to hide the selector hilight when it's target
view is scrolled off-screen.
Bug: 67881712
Bug: 67720587
Test: Existing CTS tests still pass. Can now click list items
via mouse even when scrolled. Visually checked that that
selector hilight is not visible if off-screen.
Change-Id: Ia7b0fd7b247e8d9d9e609364a5500717df648fd9
Symptom:
The display position of error popup is incorrect in RTL layout such as
Arabic language.
Root cause:
In LTR layout, a popup window is anchored to the bottom-left corner of
the anchor view. But in RTL layout, it's anchored to the bottom-right.
showError calculates a position for RTL by itself and it gets a wrong
result.
Solution:
Set the base alignment of the error popup to the bottom-left even though
it's in RTL.
Bug: 69402857
Change-Id: Iae099984e6c47feca078658ddc44ab905995fe0d
1. smart_selection_enabled_for_edit_text
Disables smart selection for editable text.
2. smart_selection_dark_launch
Dark launch TextClassifierImpl.suggestSelection(...)
In this mode we run the method, but never change the user's
selection to measure the quality of the results based on what
the user actually wanted.
Bug: 65959640
Test: Manually tested flags turn on/off feature with 'adb shell
settings put global' and GServices override.
Test: bit FrameworksCoreTests:android.provider.SettingsBackupTest
Merged-In: Iacc561c8ee004b0123de66ad1ee06b1f56b4e4b4
Change-Id: Iacc561c8ee004b0123de66ad1ee06b1f56b4e4b4
Increase the duration allowed for a TextClassifier (TC) result when
it is being initialized for the first time.
Initialization typically takes more time that other calls to the TC.
A timeout during initialization means the user doesn't see the
effect of running the TC the first time. Subsequent calls typically
work fine as they're less likely to timeout.
We increase this value only slightly because we don't want the user
waiting too long for a slow TC's result. Finding the right balance
is an art and most likely depends on the TC being used.
Note that although a TextView's TC can change for each individual
call to the TC, such a situation does not benefit from the bump in
the timeout. Again, we really want to discourage larger timeouts.
Fixes: 66217281
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: Manual test:
- Delayed TextClassifier response by about 150ms (allowing only 50ms for initialization)
- Before cl: Sometimes the result is not shown to the user the
first time the textclassifier runs
- After cl: Results consistently show for even for first
textclassifier call
Merged-In: Iabc8279fa57ef6a9a2db0c7e9c7e3ab8c131bf02
Change-Id: Iabc8279fa57ef6a9a2db0c7e9c7e3ab8c131bf02
This CL ensures that a null text is not passed to
TextClassificationHelper.reset(...)
This CL does not handle the issue of TextView.getText() being null.
Bug: 65682674
Test: none
Merged-In: Id8bdc062ecf21cc14810586580fef9052672cfd8
Change-Id: Id8bdc062ecf21cc14810586580fef9052672cfd8
Previously, making two selections quickly one after the other could lead
to the first session missing the terminal event, and the second one getting
terminated prematurely - getting marked incorrectly as abandoned.
Bug: 64914512
Test: Manually tested that logs are correct.
Change-Id: Icd75dcabe707b591f30629b9b9b42c5459ed7dda
Changes that affect logging:
- Switched to new category/actions/fields that are used exclusively by
selection logging.
- Action types are now logged in the tron type (the information that was
previously in the field could be derived from other fields).
- Entity types are now logged in the tron sub type.
- Delta time from previous event is now zero for first event (was time
since epoch).
- The smart select model version is now written for all events after
smart select has run. (i.e. better support for analysis based on
terminal events alone)
- Restoring the logging removed in ag/2901629.
Internal only changes:
- Made debug statement conditional on DEBUG_LOG_ENABLED.
- Reduced logging tag length to fit into 23char limit.
Bug: 64914512
Test: Manually tested that logs are correct. Will follow up with automated tests.
Merged-In: If12daa2f206fb42be53587decbe2c4abfd689f41
Change-Id: Iec0f6cf1f9f2efdc8518133cf8551cd96b095ad8
Line height calculation with maxLines set to zero displayed a single
line when BoringLayout was used. This CL fixes it to show zero lines.
Test: Added related CTS tests to TextViewTest and EditTextText
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit CtsWidgetTestCases:android.widget.cts.EditTextTest
Bug: 65435738
Change-Id: Ic21eb50b31666b2dcc2398278010fa072ea1ff67
This logs when the selected text is changed e.g. by typing on
the hard or soft keyboard.
Bug: 64914512
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Merged-In: I82b3b2157856c607d08a82c0a3d9fb938af4c06a
Change-Id: I82b3b2157856c607d08a82c0a3d9fb938af4c06a
- Fix count with selection start index inside a word
- Properly handle whitespace characters
- Set the model version tag
Bug: 64914512
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: Manually tested that logs are correct. Will follow up with automated tests.
Merged-In: Ib73b52ebce999f2cb6e5734e556cd09e47c89a29
Change-Id: Ib73b52ebce999f2cb6e5734e556cd09e47c89a29
TextView#performLongClick() calls View#performLongClick which
calls View#performLongClickInternal() which, if handled, performs
the longpress haptic feedback and returns handled. TextView
looks at this return value and if it is true then makes another
call to perform longpress haptic feedback. Remove the duplicate
call in TextView as the one in the parent (View) is sufficient.
Bug: 65397911
Test: manual
Change-Id: Ic73a86637486d5382b63f1c1b37783e238452841
This field is now being used for new smart selection logging.
See: Icc9d5b542140bdb01b2ad4211048bd83eae2ce83
Bug: 64914512
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit CtsAccessibilityServiceTestCases:android.accessibilityservice.cts.AccessibilityTextTraversalTest
Change-Id: If1ce8ca038b089500cd7adb9a146330abe909407
TODO: Log typing over selection
Bug: 64914512
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit CtsAccessibilityServiceTestCases:android.accessibilityservice.cts.AccessibilityTextTraversalTest
Merged-In: Icc9d5b542140bdb01b2ad4211048bd83eae2ce83
Change-Id: Icc9d5b542140bdb01b2ad4211048bd83eae2ce83
Since otherwise they would be illegible with the color
tranformation.
Change-Id: I5c1fa085fc3d6f682012c267d489a95fc7073f32
Fixes: 64810767
Test: manual, add decoratedMediaCustomView
Even if their layout still maches, the content was unrecoverably
destroyed, so we can't just reapply it anymore.
Fixes: 62911941
Test: runtest -x packages/SystemUI/tests/src/com/android/systemui/statusbar/notification/NotificationInflaterTest.java
Change-Id: I3a50c96484686958570ac5e4949df3ad4b8a421a
- TabHost was forwarding Tab/shift+tab/space to its content
instead of navigating through the tabs.
- FocusFinder's directional focus considered 2 touching Views to be
overlapping which would yield confusing directional movement at
times.
Bug: 62943663
Bug: 62911028
Test: Added CTS tests
Change-Id: I253f66b7513daf5c2c9fdeed8a2fb930b4fd8db4
AutoSize now takes the text transformation method into
account when measuring the view.
Bug: 63889588
Test: cts-tradefed run cts-dev -m CtsWidgetTestCases -t
android.widget.cts.TextViewTest#testAutoSizeCallers_setTransformationMethod
Change-Id: I52f4bf6ea2f45342efa04b742a9debdac69f9c4c
Overscroll updates:
Same shape, but smaller radius (doesn't come as far into the view)
and more translucent (max 15% instead of 50%). Overall, more subtle.
Toast updates:
Light background, smaller, dark font, closer to the bottom of the
container.
Test: manual unit tests. Also:
cts test ToastTest for toast changes
cts test EdgeEffectTests for EdgeEffect changes (adding some tests to
known-failures for now, due to brittle golden-image failures - see
CL ag/2596621)
Bug: 30563264 Refresh toast visuals for Android ODR
Bug: 63010438 Tweaks to overscroll animation
Change-Id: I0fac6322b0b81d030c8d174852c134211290bbea
Bitmap sizes could be arbitrary large when they were sent
over to the system. We're now reducing them to reasonable
sizes.s
Also fixed that notification bitmaps were not put into
ashmem anymore since it got lost in a refactor.
Test: code inspection
Bug: 62319200
Merged-In: I87db7656e749666b9eab1f67fd497f155c407e18
Change-Id: I87db7656e749666b9eab1f67fd497f155c407e18
Bitmap sizes could be arbitrary large when they were sent
over to the system. We're now reducing them to reasonable
sizes.s
Also fixed that notification bitmaps were not put into
ashmem anymore since it got lost in a refactor.
Test: code inspection
Bug: 62319200
Change-Id: I87db7656e749666b9eab1f67fd497f155c407e18
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Bug: 62340817
Change-Id: Ifbf2c39d9f304251adc8c4acdf1b4fd6914011d8
Previously, TextInputTimePickerView used the default numeric IME, which
could result in cases where the digits displayed in the text fields were
native, but the IME showed ASCII digits resulting in a mix.
Now we use setImeHintLocales to hint that we need a localized IME.
Change-Id: Ic4041dcc65a31bd00741c6d96d8cbc5dac9d77c8
Fixes: 63650251
Test: Manual (tested under en-US and ar-BH locales)
by:
1. Restricting 'moving hide' -- where we hide the toolbar if the
toolbar is moving.
2. Hide the toolbar when transitioning to 'select all' -- where the
toolbar is refreshed.
Bug: 32910217
Bug: 30418276
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Change-Id: I1f44ee765d74bbcf08e6e7cd635f76d1e8f6305b
This allows us to reset mCheckedItemCount to 0 to match the clearing
of check states.
Bug: 63559021
Fixes: 63559021
Test: Added test to AbsListViewTest.
Change-Id: I47a0fbc25448addf75a3f7e5a282bb98360200dd