Commit Graph

8859 Commits

Author SHA1 Message Date
Pierre Barbier de Reuille
4e14c35736 Merge "Framework implementation of go/widgets-dynamic-colors" into sc-dev 2021-02-24 20:16:40 +00:00
TreeHugger Robot
e4c9e20df0 Merge "Add edge effect type accessors for views that support it" into sc-dev 2021-02-24 16:32:07 +00:00
Pierre Barbier de Reuille
4219de7ded Framework implementation of go/widgets-dynamic-colors
Bug: 179783721
Test: atest CtsWidgetTestCases:android.widget.cts.RemoteViewsThemeColorsTest
Change-Id: I622e79ed8738dc862790191bf9fcf44b0af35c8e
2021-02-24 15:13:29 +00:00
TreeHugger Robot
f6d8a8390b Merge "Update toast parameters instead of re-adding" into sc-dev 2021-02-24 00:34:02 +00:00
Stevie Kideckel
82d0290282 Merge "Add tint list/mode APIs to AnalogClock" into sc-dev 2021-02-23 22:47:59 +00:00
Stevie Kideckel
990269dd07 Merge "Expose tint lists and other runtime functionality to RemoteViews" into sc-dev 2021-02-23 10:18:10 +00:00
George Mount
7954a1afaa Add edge effect type accessors for views that support it
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
2021-02-22 19:52:40 +00:00
TreeHugger Robot
d90f98587f Merge "ListView implementation for stretch overscroll." into sc-dev 2021-02-22 18:21:25 +00:00
Stevie Kideckel
41c60e0ccb Expose tint lists and other runtime functionality to RemoteViews
Bug: 180086170
Test: sample app using new methods, atest
Change-Id: I5aa5476d95d6c9fb992c4548d97f577234d747a7
2021-02-22 15:09:18 +00:00
Stevie Kideckel
1f01cf90c5 Add dark mode apis for setting colors and icons
Bug: 180494787
Test: sample app
Test: atest RemoteViewsTest
Change-Id: I685804c5d0fe51b75508ec5ba7c122e75ad750da
2021-02-22 11:47:36 +00:00
George Mount
3cdfc89600 ListView implementation for stretch overscroll.
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
2021-02-19 21:56:22 +00:00
Beverly
e8667d6c99 Update toast parameters instead of re-adding
To avoid a race condition

Test: manual
Fixes: 180615914
Change-Id: I9b39fd2f495605065c1a90ae3ffd5e59a1463fda
2021-02-19 12:49:50 -05:00
Stevie Kideckel
90362ddd27 Merge "Add checked change APIs to RemoteViews" into sc-dev 2021-02-19 09:48:25 +00:00
Stevie Kideckel
33882b673d Merge "Add RemoteViews.setBlendMode and expose target methods" into sc-dev 2021-02-17 17:37:38 +00:00
Stevie Kideckel
60e41fcc38 Add tint list/mode APIs to AnalogClock
Bug: 177997338
Test: atest
Change-Id: I12846543c4d017e19ec4bccf60eeaf7509534b07
2021-02-17 17:03:50 +00:00
TreeHugger Robot
ab25c0a0dd Merge "Consolidate ImeAwareEditText#scheduleShowSoftInput (1/2)" into sc-dev 2021-02-17 13:26:01 +00:00
Stevie Kideckel
289da0b787 Add checked change APIs to RemoteViews
Bug: 179245670
Test: built sample app to use APIs with and without collections, atest
Change-Id: I5474bfb7dc15d559867063d1d8516b8ca2ef9755
2021-02-17 12:01:28 +00:00
Pierre Barbier de Reuille
574718564e Merge "Framework changes for go/widget-size-specification" into sc-dev 2021-02-17 00:34:18 +00:00
TreeHugger Robot
6c9f4850fb Merge "ScrollView and HorizontalScrollView stretch overscroll" into sc-dev 2021-02-17 00:30:32 +00:00
Pierre Barbier de Reuille
d7541b8990 Framework changes for go/widget-size-specification
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
2021-02-16 21:24:11 +00:00
TreeHugger Robot
b399995df7 Merge "Placeholder implementation of stretch overscroll using offset" into sc-dev 2021-02-16 17:47:50 +00:00
Ming-Shin Lu
8bcce88c86 Consolidate ImeAwareEditText#scheduleShowSoftInput (1/2)
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
2021-02-17 01:02:34 +08:00
Oli Lan
0e588cc322 Merge "Add ClipDescription method to determine if the clip is styled text." into sc-dev 2021-02-15 16:14:15 +00:00
George Mount
97f04fe7d3 ScrollView and HorizontalScrollView stretch overscroll
Bug: 178807038

Modify ScrollView and HorizontalScrollView to support
stretch overscroll.

Test: I18820794f2511ff4b7df1c5c6a9d7a2d5fafeaa0
Change-Id: I1370b702ce7331269744033c6acb61b84519c853
2021-02-12 21:12:07 +00:00
Stevie Kideckel
bc1d288d62 Add RemoteViews.setBlendMode and expose target methods
Bug: 180086170
Test: sample app,atest
Change-Id: I2323d297412afb64d142bddb6608978ccc8d292f
2021-02-12 16:38:55 +00:00
George Mount
f1de89b16c Placeholder implementation of stretch overscroll using offset
Temporarily use an offset RenderEffect for the stretch overscroll.
This makes it possible to visually validate the effect and start
writing CTS tests to ensure it is functioning.

Bug: 178807038
Test: Iab32812bfa626ae6932f52c1a9af78069b5dc6ac
Change-Id: I5b0da0e669d36f4149cd58b4b3aff149a1fa7e14
2021-02-11 23:17:16 +00:00
TreeHugger Robot
5febe8f633 Merge "Clean up: Remove mIsSentenceSpellCheckSupported since it is always true." into sc-dev 2021-02-11 20:14:47 +00:00
George Mount
0901fc33f7 Update the EdgeEffect API
Bug: 178807038

EdgeEffect adds getDistance() to allow the developer to
determine how much of the pull was consumed by the EdgeEffect.
onPullDistance() is similar to onPull() except that it returns
the consumed pull distance.
A new constructor was added to allow EdgeEffect attributes to
apply to Views.

Test: I7f6d6153c1a5bc714ad1935ae0c78907e6839547
Change-Id: Ie29b081cb34af0219287bd1702fea8d273a78d74
2021-02-10 21:23:15 +00:00
TreeHugger Robot
36192d4044 Merge "Update Toast visuals + motion" into sc-dev 2021-02-10 20:53:07 +00:00
TreeHugger Robot
0177fad845 Merge "Add edgeEffectType attribute and type property" into sc-dev 2021-02-10 17:57:54 +00:00
Beverly
75a4033db8 Update Toast visuals + motion
Puts Toast style/animation changes behind a FeatureFlag

Toasts can be added via Toast APIs OR legacy apps can add the
window directly. Because toast windows can be added directly by legacy
apps, DisplayPolicy.java requires that toast windows are removed
after TOAST_WINDOW_TIMEOUT.  This also means Toast windows added via
the Toast APIs are subject to this timeout. Therefore, this CL also
increases the timeout by 600ms to account for SystemUI's in/out
toast animations.

Bug: 169587378
Test: atest ToastUITest
Test: manual, rotate device while toast is showing
Change-Id: Ib17655c253f4ec4f7018cc5f7939b88a50ea5014
Merged-In: Ib17655c253f4ec4f7018cc5f7939b88a50ea5014
2021-02-10 17:08:51 +00:00
George Mount
ba1c4c4e30 Add edgeEffectType attribute and type property
Bug: 178807038

This adds the edgeEffectType property and
type attribute. These will be used to
enable stretchy edge effect for overscroll.

Merged-In: I16f20b36d9a15c08e0a37f98572ef9c9f8fbc88f
Test: new CTS test for setting/retrieving the effect type.
Test: Ic363f71d241649d15faa86434516457e62b261f4
Change-Id: I16f20b36d9a15c08e0a37f98572ef9c9f8fbc88f
2021-02-10 15:48:02 +00:00
Oli Lan
4d5c48d988 Add ClipDescription method to determine if the clip is styled text.
This adds a new method to ClipDescription to allow callers to
determine if the associated ClipData is styled text, without
accessing the ClipData directly.

This information is used by editors such as TextView or WebView
when they show a selection toolbar, in order to determine if a
"Paste as plain text" option should be shown. Currently, ClipData
must be accessed in order to do this, so a clipboard access
occurs whenever text is selected.

Avoiding these clipboard accesses is desirable because a user-visible
message may in future be shown whenever ClipData is accessed
(see b/167676460), which may cause user confusion.

Bug: 167660455
Test: new tests added to ClipDescriptionTest in CTS
Change-Id: I48bea4d11a68b198d60016b364a3cfa0b0bf277e
2021-02-10 10:06:05 +00:00
Stevie Kideckel
2d2d20741b Add a RemoteViews API for outline corner radii
Bug: 179478275
Test: built test app to use APIs, atest
Change-Id: I0da0f3fcb5d01f9e94e75f2fc17494bb7902ac7f
2021-02-08 15:17:38 +00:00
TreeHugger Robot
3ae84f530b Merge "Rename InputConnecton#setImeTemporarilyConsumesInput" into sc-dev 2021-02-07 03:13:55 +00:00
TreeHugger Robot
4b0a9bd7dd Merge "Make EditorInfo.internalImeOptions parcelable." into sc-dev 2021-02-06 04:53:22 +00:00
Stevie Kideckel
ae11a1abcf Merge "Enable use of of CompoundButtons in RemoteViews" into sc-dev 2021-02-05 22:18:25 +00:00
Lan Wei
66b21086e3 Rename InputConnecton#setImeTemporarilyConsumesInput
Rename InputConnecton#setImeTemporarilyConsumesInput as InputConnecton#setImeConsumesInput

Bug: 175362887
Bug: 179143513
Test: atest FrameworksCoreTests:TextViewTest
Test: atest CtsWidgetTestCases:TextViewTest

Change-Id: I8ac1ea4d53f747b0086ed415ff90793dfc6155bc
2021-02-05 12:16:22 +08:00
Steven Kideckel
c42edd69f9 Enable use of of CompoundButtons in RemoteViews
This change adds @RemoteView and @RemotableViewMethod to the relevant
views we'd like to enable. New APIs have been added to set Icons in
CompooundButton and Switch.

onCheckedChange support will be added in a follow-up CL.

CompoundButton.setChecked and RadioGroup.check aren't directly remotable
since RemoteViews will need to control those calls directly to ensure
that any onCheckedChange listeners aren't triggered by RemoteViews
actions.

Bug: 179245670
Test: manual, atest
Change-Id: I85e2aee62cf39ed008d9c9c1fece813293841fbd
2021-02-03 23:00:24 +00:00
Stevie Kideckel
ac2f0dbe00 Merge "Add support for time zones to AnalogClock" into sc-dev 2021-02-03 18:47:22 +00:00
TreeHugger Robot
e503bf9dd7 Merge changes from topics "remoteview_resources_setters_sc", "remoteview_resources_setters_sc2" into sc-dev
* changes:
  New setters extracting values from complex unit dimensions.
  Refactoring the reflection actions to prepare for a third one.
  New setters extracting values from resources for RemoteViews.
2021-02-03 14:31:28 +00:00
Tony Mak
2b2f788072 Merge "Do not invoke textclassifier when dimissing the selection" into sc-dev 2021-02-03 12:28:14 +00:00
Chenxi Ni
d825375fcc Clean up: Remove mIsSentenceSpellCheckSupported since it is always true.
Bug: 179223118
Test: atest CtsInputMethodTestCases:SpellCheckerTest
Change-Id: Ic47a6aee5fb29a9549ecd72c5a5a6aea889ad74b
2021-02-03 15:03:15 +08:00
Steven Kideckel
b9184b44a0 Add support for time zones to AnalogClock
The format, attribute and method names are analogous to the existing
APIs in TextClock.

Bug: 177997338
Test: Manual: wrote a local app that uses time zones from XML and
RemoteViews.setString, including with null/invalid values

Change-Id: Ic40c1c6846e923475b7c26e5ec2912786e046c96
2021-02-02 18:56:56 +00:00
Stevie Kideckel
dfeb40318e Merge "Add support for seconds hand to AnalogClock" into sc-dev 2021-02-02 15:43:22 +00:00
Steven Kideckel
7556f48861 Add support for seconds hand to AnalogClock
Bug: 177997338
Test: manual - wrote app to use runtime apis
Change-Id: I05b3ebb19598a4f1d605f9ba62005aaab733666d
Merged-In: I05b3ebb19598a4f1d605f9ba62005aaab733666d
2021-02-02 00:42:03 +00:00
Pierre Barbier de Reuille
24ffac5ccd New setters extracting values from complex unit dimensions.
These new setters allow defining configuration dependent values at
runtime (to some extend) in a way that is currently not possible.

See go/widgets-configuration-setters for details

Bug: 178591376
Test: atest android.widget.cts.RemoteViewsTest
Change-Id: I5a1582b4fa7f70ad8d922c72f773fe254ef2f9ff
2021-02-01 21:26:26 +00:00
Pierre Barbier de Reuille
2a98cf0f64 Refactoring the reflection actions to prepare for a third one.
This creates a base class to resolve the method and split the part
determining the value for the parameter.

Bug: 178591376
Test: atest android.widget.cts.RemoteViewsTest
Change-Id: I95b6e6bc56d4c1968fefe4976de03cedfdb9b6a4
2021-02-01 21:26:04 +00:00
Pierre Barbier de Reuille
3aa4b1994e New setters extracting values from resources for RemoteViews.
These new setters allow defining configuration dependent values at
runtime (to some extend) in a way that is currently not possible.

See go/widgets-configuration-setters for details

Bug: 178591376
Test: atest android.widget.cts.RemoteViewsTest
Change-Id: I31c24e6e7bb67df7896f8117a9999f0c1edb8e1a
2021-02-01 17:18:28 +00:00
Chenxi Ni
821234c8dd Fix InputConnection#performSpellCheck logic:
- Change to trigger full content spell check when calling InputConnection#performSpellCheck.
 - When calling InputConnection#performSpellCheck, forces to do spell check even user is editing the word.

Bug: 177947314
Test: atest CtsInputMethodTestCases:SpellCheckerTest
Test: Manually test the add to dictionary case with Gboard
Change-Id: I4f7c2e638e517fe91776ef0a285ee20e4cdc9a92
2021-02-01 17:49:16 +08:00