If InputMethodService declares suppressesSpellChecker="true", the system
SpellCheckerService will be disabled.
With TextView, when IMSs are switched while the user is editing,
SuggestionSpans that were previously added will not be removed even if
the next IMS declares suppressesSpellChecker="true".
This is because we don't know if the SuggestionSpans were from Spell
Checker, App, or IMS.
Bug: 153473490
Test: atest CtsInputMethodTestCases:SpellCheckerTest
Change-Id: Ia22b8758111087818beea8c07b1c173f1a94b8e4
Introduces SentenceIterator into android.widget.SpellChecker and
uses it to detect the start/end of spell check range instead of
using a fixed length.
Fix: 179125303
Fix: 179124679
Test: atest CtsInputMethodTestCases:SpellCheckerTest
Change-Id: If6dd044e24dcaa58381949c221a5f9af57a4104f
We receive translation doesn't work issues but we don't have enough
log information to help debugging the issue. To help clarify issue
- Add more information when dumpsys activity information
- We use Log.isLoggable() to control if the debug log need to be
printed. But for the development phase, we enable print log on the
debuggable ROM, we will delete it before platform release.
Bug: 181975692
Test: manual. adb shell dumpsys activity <myactivity> --translation
(Can find dumpsys result of sample app in bug 182433547)
Change-Id: I4a9a1667a544fc4d1654c5f297d365a8288b1f4a
Bug: 171228096
Use the spring animation from the prototype in
EdgeEffect.
Test: manual testing for fling and recede
Change-Id: I7eec03a98f5d26153512ba402d6bb5bc5dc70ffb
Bug: 171228096
Added two ChangeIds for stretch overscroll:
USE_STRETCH_EDGE_EFFECT_BY_DEFAULT makes stretch overscroll
the default.
USE_STRETCH_EDGE_EFFECT_FOR_SUPPORTED makes stretch overscroll
the default for applications that use the new EdgeEffect
constructor that accepts an AttributeSet. This indicates
knowledge of stretch overscroll APIs and can be a proxy for
supporting stretch overscroll.
Test: Both flags on apps that support and don't support new api
Change-Id: If2ec832c9656116fe1aa64d33682c489abbde30f
This follow recommendations from the API council review.
Based on those recommendations: I updated the API and updated the
comments to make the function behavior clearer.
Bug: 181611658
Test: atest android.widget.cts.RemoteViewsSizeMapTest
Test: Local widget to check rendering
Change-Id: Ie9fcedbc7b18b83f6d1220f99240f264e53e3649
--Ported SKSL based stretch shader from OpenGL prototype
--Hooked up the stretch APIs in RenderNode to the stretch
shader.
--Updated RenderNode layer logic to promote the RenderNode to
a layer if there is a stretch to be applied to it in order
to feed the layer as input to the stretch shader
Bug: 179047472
Test: builds + sample overscroll stretches + updated CTS test
Change-Id: I744ff70099fe251ce07f23d067bf13444a468c08
Read the selection timeout value from ViewConfiguration,
ViewConfiguration is statically configurable by the OEM. OEMs can
set the value which works on their device before shipping it.
After privacy sync, we can make the selection context size
configurable by DeviceConfig but we need to provide a
reasonable upper bound. The value is 240 after experiment.
Bug: 169042855
Test: atest CtsTextClassifierTestCases
Test: atest CtsWidgetTestCases:TextViewTest
Test: atest android.widget.TextViewActivityTest
Test: manual. Changes values by command and checks the values.
Change-Id: I59346fdc3b482bca586c13ba6c653d1e9b593922
The cursor visibilty should be resumed to previous without regard to
whether IME is temporarily cousming input.
Test: atest FrameworksCoreTests:SuggestionsPopupWindowTest
Bug: 179088361
Bug: 175362887
Change-Id: Ibcae7ef47d942b47c00734bd55c6712e0edc3990
Bug: 171228096
The edge effect type attribute is supported in
ScrollView, HorizontalScrollView, and ListView, so
those views must provide accessor methods for the
edge effect type. This CL adds them.
Test: I5684df2a21cfeaefeac01290f7681e5c5beebd7c
Change-Id: I93db702995401bf890217e8001cfe0664ac51c81
Bug: 178807038
ListView implementation for stretch overscroll. Currently
this uses the prototype offset implementation, but there should
not need to be any changes for stretch overscroll implementation.
Test: Iee68563413f40810f63119d427e6fb41f4287e41
Change-Id: Ie8bb1258caeb2c7edc36e03c1d78751d92b77b3f
Update the framework to:
1 - Allow creating RemoteViews with a mapping from size to layouts
2 - Use the closes sized layout in any given situation
3 - Allow the launher to specify the current size when inflating a
remote views
Bug: 179025145
Test: atest android.widget.cts.RemoteViewsSizeMapTest
Change-Id: Icf98d01bd0cf8b48c47555a1af6acb498b46b1a4
As InputMethodManager#isActive(View) may not always predictable as
reality since the method only check if the given view has been aligned
with the current served view, but not consider if the view has an active
input connection.
Test flakiness may happen when verifying showSoftInput should be invoked
after onStartInput but the event stream shows the reversed sequence.
Consolidate scheduleShowSoftInput by checking
IMM#hasActiveInputConnection to make sure showSoftInput request should
invoked after the input connection activated by the given focus view.
Bug: 176697749
Test: atest --iterations 100 KeyboardVisibilityControlTest#\
testImeInvisibleWhenForceStopPkgProcess_Full
Change-Id: I466a93e2b4706ae809ac50dc16dc8e4ffa7c2f1c