Commit Graph

8380 Commits

Author SHA1 Message Date
Tiger Huang
4a7835ffb6 Window Manager Flag Migration (7/n)
Introduce new APIs in Window/WindowManager.LayoutParams for developers
to decide which types of insets at which side a window should avoid:

    setFitWindowInsetsTypes(@InsetsType int types)
    setFitWindowInsetsSides(@InsetsSide int sides)
    setFitIgnoreVisibility(boolean ignore)

The existing logic in DisplayPolicy.layoutWindowLw uses combinations of
window types, window flags, and system UI flags to decide what frames a
window should have, which is very complex, difficult to maintain, and
should be replaced with the new APIs.

Bug: 118118435
Test: atest InsetsSourceProviderTest InsetsStateControllerTest
            InsetsPolicyTest WindowStateTests CommandQueueTest
            RegisterStatusBarResultTest InsetsFlagsTest
            LightBarControllerTest RegisterStatusBarResultTest
            ViewRootImplTest DisplayPolicyLayoutTests
            DisplayPolicyInsetsTests DisplayPolicyTests
            TaskSnapshotSurfaceTest
Change-Id: I06ddc9d0d2887ba4ded7bb8adbf9c9c0da4bf7b4
2019-12-16 17:08:21 +08:00
Winson Chung
25978ac5b4 Revert "Cleaning up listener when task completes"
This reverts commit 4c980fe0e0.

Reason for revert: b/146116098

Change-Id: Ifafe0542e91661e52662d711a848996cbb3f57c8
2019-12-12 17:53:33 +00:00
Sunny Goyal
4c980fe0e0 Cleaning up listener when task completes
The caller can hold on the Cancellation signal even after the task
completes which stores a reference of the original RemoteViews and
all the resources associated with it.

Bug: 145829442
Test: Verified Appwidget functionality
Change-Id: I6998980b5bf64dd59fa1b53240440b29df0fb866
2019-12-09 11:21:02 -08:00
Nikita Dubrovsky
d63f2035bd Consolidate tracking of touch state in Editor (editable TextView)
The goal of these changes is to consolidate the state that needs to be
tracked for user motion events (touches, clicks, etc), in order to make
it easier to add/update functionality in the future.

These changes are intended to fully preserve existing behavior from the
user perspective. For the most part, the logic is completely unchanged
(just that the code is pulled out), but it's worth calling out the
following subtle changes to the logic. These changes don't affect any
user-visible behavior.

1) In Editor.onTouchEvent, the recorded position of the last down event
is now updated before SelectionModifierCursorController.onTouchEvent()
is invoked.

2) In Editor.updateTapState (now in EditorTouchState.update), instead
of using SystemClock.uptimeMillis() for the event time, we use
event.getEventTime().

Bug: 143852764
Test: Manual testing and unit test
  atest FrameworksCoreTests:EditorTouchStateTest
Change-Id: Ic40b5e53412294d365bc9d787e7013a44fe11ffa
2019-12-05 15:56:29 -08:00
David Castro
530c32a56e Merge "Removes reference to deprecated code sample, https://github.com/googlesamples/android-CustomChoiceList." into qt-dev am: 3b74a86752 am: 3a6d5555cd am: 56be7c0b58
am: 1294b8b570

Change-Id: I687031198545e945dcd72950d3c195d312c2d338
2019-11-25 07:22:29 -08:00
David Castro
1294b8b570 Merge "Removes reference to deprecated code sample, https://github.com/googlesamples/android-CustomChoiceList." into qt-dev am: 3b74a86752 am: 3a6d5555cd
am: 56be7c0b58

Change-Id: I8ee35a24fc7fe2549e7a7a2c0875c0ea24e32476
2019-11-22 09:09:15 -08:00
David Castro
56be7c0b58 Merge "Removes reference to deprecated code sample, https://github.com/googlesamples/android-CustomChoiceList." into qt-dev am: 3b74a86752
am: 3a6d5555cd

Change-Id: I7684da1e104dac4f62ed3a7ef3f928c1598509aa
2019-11-22 09:02:02 -08:00
David Castro
3a6d5555cd Merge "Removes reference to deprecated code sample, https://github.com/googlesamples/android-CustomChoiceList." into qt-dev
am: 3b74a86752

Change-Id: I2b5e70ef834a0d0f4ccc3689d036321094a24170
2019-11-22 08:55:24 -08:00
TreeHugger Robot
3674ae2f7b Merge "Use static filter for inflater of RemoteViews" 2019-11-22 01:02:28 +00:00
Bernardo Rufino
540ad7a28f Add TEST_MAPPINGs for toasts
Following revert of ag/9699132 due to related broken tests that weren't
executed in presubmit.

Test: croot frameworks/base/core/java/android/app && atest --dry-run --test-mapping
Test: croot frameworks/base/core/java/android/widget && atest --dry-run --test-mapping
Test: croot frameworks/base/services/core/java/com/android/server && atest --dry-run --test-mapping
Change-Id: I819cf354315e240b28dba294c08cf08bba6aada2
2019-11-21 10:28:22 +00:00
David Castro
2ec0df7dfc Removes reference to deprecated code sample, https://github.com/googlesamples/android-CustomChoiceList.
BUG:140947822

Change-Id: I77b9e3a5b466afea51467418f25ffe7f1b921c7d
2019-11-20 23:06:01 +00:00
Yinglei Wang
0b60fc71e3 Merge "change CompoundButton button to use the accessibility state API" 2019-11-20 18:37:31 +00:00
Bernardo Rufino
5cf5c3fe63 Merge "[Roll Forward] Block background custom toasts" 2019-11-20 17:50:40 +00:00
Bernardo Rufino
60c39b3bc8 [Roll Forward] Block background custom toasts
Previous CL (ag/9699132) broke CTS ToastTest and was reverted (ag/9754500).
This was because the test was posting a background toast and verifying it
wasn't clickable. Test has been updated to use a foreground toast in ag/9754274
and I will also look into having it be executed in presubmit.(b/144810971).

-- Previous CL description (updated "Test:" lines)

To assess app compatibility problems early on, this CL blocks background
custom toasts in a non-secure way. We create a new method in the AIDL called
enqueueTextToast() that now contain the same parameters as
enqueueToast(), receiving the view created inside the app's process. But this
method will, in the future, contain a CharSequence instead of
ITransientNotification, for window creation inside the system.

We use PlatformCompat infrastructure to check if the change is enabled.

I learned with this change that if user blocks notifications for an app, it
won't be able to show background toasts, allowing me to re-use the foreground
check that was already in place.

This change will display a text toast (from the system) in case the app's
custom toast gets blocked, this is temporary to get feedback from
dogfood.

Test: With sample app, verify that:
      1. Posting text toast in bg works
      2. Posting custom toast in fg works
      3. Posting custom toast in bg does NOT work
Test: atest CtsToastTestCases CtsWindowManagerDeviceTestCases:ToastTest
      CtsWidgetTestCases:ToastTest CtsToastLegacyTestCases
Test: Working on CTS
Bug: 128611929

Change-Id: I25c6339c6adeb907878596332f57e2fa229bfda9
2019-11-20 09:16:31 +00:00
Yinglei Wang
fab7312a43 Merge "Adopt the accessibility state api in progress bar" 2019-11-20 01:09:53 +00:00
Long Ling
24b3ed84a0 Merge "Revert "Editor: do not blink when invisible to user"" 2019-11-19 22:49:55 +00:00
yingleiw
473fc125fa change CompoundButton button to use the accessibility state API
Test: tested with updated talkback (see CL/274237446). It works as
before.

Change-Id: I928350c8bc9112252e8b8a703c465489f03fde11
2019-11-19 12:13:56 -08:00
Long Ling
0c27fbbec7 Revert "Editor: do not blink when invisible to user"
This reverts commit 6fef46e473.

Reason for revert: regression issue b/144403447

Bug: 144403447
Change-Id: Ie5917bb39c77fc08bb1d40ce78e68b37bf591d85
2019-11-19 18:41:53 +00:00
Bernardo Rufino
a229e8f1c1 Merge "Revert "Block background custom toasts"" 2019-11-19 16:29:44 +00:00
Bernardo Rufino
15fecc3662 Revert "Block background custom toasts"
This reverts commit 880cf32c70.

Reason for revert: Broke CtsWindowManagerDeviceTestCases ToastTest.testToastIsNotClickable()

Change-Id: Ia108eeee81b673306d0e552e01d18e1558a00dd8
2019-11-19 16:25:20 +00:00
Artur Satayev
785d3a03b9 Merge "Add @UnsupportedAppUsage annotations for greylist." 2019-11-19 15:05:51 +00:00
Artur Satayev
751e55114c Add @UnsupportedAppUsage annotations for greylist.
go/cleanup-greylist-txt

These have already been greylisted, however due to bugs/omissions in the tooling have been kept in go/greylist-txt instead of being annotated in the code.

This is partial merge of aosp/Id6c1f5e403a0e66edb1102ee45f3bf19f244fb09. Telephony greylist cleanup has been done separately. Note that annotations outside of frameworks/base/ have been merged from AOSP.

Bug: 137350495
Test: m
Exempt-From-Owner-Approval: merge
Change-Id: I015c466e8b69cc0fed5e9d394ba865aad11d8ba6
2019-11-19 15:05:35 +00:00
Bernardo Rufino
f2e1609f54 Merge "Block background custom toasts" 2019-11-19 11:18:48 +00:00
Bernardo Rufino
880cf32c70 Block background custom toasts
To assess app compatibility problems early on, this CL blocks background
custom toasts in a non-secure way. We create a new method in the AIDL called
enqueueTextToast() that now contain the same parameters as
enqueueToast(), receiving the view created inside the app's process. But this
method will, in the future, contain a CharSequence instead of
ITransientNotification, for window creation inside the system.

We use PlatformCompat infrastructure to check if the change is enabled.

I learned with this change that if user blocks notifications for an app, it
won't be able to show background toasts, allowing me to re-use the foreground
check that was already in place.

This change will display a text toast (from the system) in case the app's
custom toast gets blocked, this is temporary to get feedback from
dogfood.

Test: With sample app targeting SDK 29, verify that:
      1. Posting text toast in bg works
      2. Posting custom toast in fg works
      3. Posting custom toast in bg does NOT work
Test: With sample app targeting SDK 28, verify that 1, 2 and 3 above work.
Test: Working on CTS
Bug: 128611929
Change-Id: Icecbbeff081fa5e7c4329bf3b383d6859520b517
2019-11-18 15:45:41 +00:00
yingleiw
6ab02c1fa4 Adopt the accessibility state api in progress bar
When the progress changes, instead of sending TYPE_VIEW_SELECTED event,
CONTENT_CHANGE_TYPE_STATE_DESCRIPTION event sent. Developers can
override onInitializeAccessibilityNodeInfo() and call
info.setStateDescription() to provide customized state description.

Bug: 123346875
Test: The default implementation of StateDescriptionFormatter maintains
the current format talkback uses. Also tested on talkback_test to set
customized state description based on progress.
Note: this change should not be merged until CL/275509401 (google3) is merged.

Change-Id: I8f1a0c91c55a498593c360483827ed050656d943
2019-11-14 11:54:23 -08:00
Zhen Zhang
6e9e5faa97 Use static filter for inflater of RemoteViews
This will get rid of the RemoteViews leak caused by ViewStub keeping
reference of LayoutInflater. But subclasses of RemoteViews won't be
affected to avoid breaking overriden usage.
Bug: 141699084
Test: Manually test. Leak disappeared. atest RemoteViewsTest

Change-Id: I1b287a166df92e424208ae35eb84bfd6aa553ddf
2019-11-12 17:18:44 -08:00
Joshua Baxter
060e5ba459 Merge "docs: fix typos" into qt-dev am: 748dd651f4 am: fcf4eace37 am: 2612ee2d6d
am: 87256ee062

Change-Id: I9f05a39824c22d7f253b4701a831ee14cba8c80f
2019-11-12 15:52:33 -08:00
Joshua Baxter
87256ee062 Merge "docs: fix typos" into qt-dev am: 748dd651f4 am: fcf4eace37
am: 2612ee2d6d

Change-Id: I621be1458f5e642615b671a428114e8436d15b0b
2019-11-12 15:38:02 -08:00
Joshua Baxter
2612ee2d6d Merge "docs: fix typos" into qt-dev am: 748dd651f4
am: fcf4eace37

Change-Id: I7644a7262bf0ac26870c5c106d94832015f3bff2
2019-11-12 15:33:33 -08:00
Joshua Baxter
fcf4eace37 Merge "docs: fix typos" into qt-dev
am: 748dd651f4

Change-Id: I795c039941adfb8d6743d7af3224231f864efd57
2019-11-12 15:29:04 -08:00
Joshua Baxter
5f005c9eb7 docs: fix typos
bug: 119075364

Change-Id: I452fc3bb80ffc7466d096b7eaf5becd18bc1fb45
test: make ds-docs
2019-11-11 21:56:38 +00:00
Artur Satayev
756d3b447a Merge "Add @UnsupportedAppUsage annotations for greylist." am: 423c3a32d6
am: 7a565c45b1

Change-Id: I48075ef4296e0b55c0055f7364c5129bbd60e9ed
2019-11-11 09:33:13 -08:00
Artur Satayev
7a565c45b1 Merge "Add @UnsupportedAppUsage annotations for greylist."
am: 423c3a32d6

Change-Id: I5387b4742fdaf67ad3189356f2361f73969b53a8
2019-11-11 09:13:24 -08:00
Artur Satayev
fc46be7dbd Add @UnsupportedAppUsage annotations for greylist.
go/cleanup-greylist-txt

These have already been greylisted, however due to bugs/omissions in the tooling have been kept in go/greylist-txt instead of being annotated in the code.

Bug: 137350495
Test: m

Change-Id: Id6c1f5e403a0e66edb1102ee45f3bf19f244fb09
Merged-In: Id6c1f5e403a0e66edb1102ee45f3bf19f244fb09
2019-11-08 16:17:13 +00:00
Joshua Baxter
e86542744b Merge "docs: remove old broken link" into qt-dev am: 2dc61fc4f4 am: 101f294b58 am: 2947a87032
am: b5ac0fcb80

Change-Id: Id141c82bb2fdc996aa9c45978ccf8542878721ad
2019-11-06 14:43:57 -08:00
Joshua Baxter
2cb2f20f5b Merge "docs: fix typo" into qt-dev am: 74ff8a0bbd am: 6b70c7893d am: ebfb71dcde
am: 83e9f58ddb

Change-Id: Id91dbc7d6dd317c70386bfa1bb37102830929477
2019-11-06 14:27:32 -08:00
Joshua Baxter
b5ac0fcb80 Merge "docs: remove old broken link" into qt-dev am: 2dc61fc4f4 am: 101f294b58
am: 2947a87032

Change-Id: I8dab46c3abe2702156eefd500b74b0ed66426c55
2019-11-06 14:25:37 -08:00
Joshua Baxter
83e9f58ddb Merge "docs: fix typo" into qt-dev am: 74ff8a0bbd am: 6b70c7893d
am: ebfb71dcde

Change-Id: I11c4688e4023c72ec8beafa16e4ac5195f79714f
2019-11-06 14:13:05 -08:00
Joshua Baxter
2947a87032 Merge "docs: remove old broken link" into qt-dev am: 2dc61fc4f4
am: 101f294b58

Change-Id: Id655af3e092e125cc80cdb0d792e56a4adb93100
2019-11-06 14:09:20 -08:00
Joshua Baxter
ebfb71dcde Merge "docs: fix typo" into qt-dev am: 74ff8a0bbd
am: 6b70c7893d

Change-Id: I930b4b473f697499857eac19cfa6eb4d6d290cef
2019-11-06 13:57:01 -08:00
Joshua Baxter
101f294b58 Merge "docs: remove old broken link" into qt-dev
am: 2dc61fc4f4

Change-Id: Ib025e4553835807c5c44496c992fb3a79827bf6b
2019-11-06 13:49:15 -08:00
Joshua Baxter
6b70c7893d Merge "docs: fix typo" into qt-dev
am: 74ff8a0bbd

Change-Id: If59dc047a0e4d8095b3a22f4609ce125af6acfe5
2019-11-06 13:38:58 -08:00
Joshua Baxter
2dc61fc4f4 Merge "docs: remove old broken link" into qt-dev 2019-11-06 21:22:59 +00:00
Joshua Baxter
a51a9b7e96 docs: fix typo
Change-Id: I2e8f28a917d0b09c0bf0a11f0db863ae7bf03ac8
test: make ds-docs
bug: 79156293
2019-11-06 21:14:54 +00:00
Joshua Baxter
5e3b85b46d docs: remove old broken link
Change-Id: If39d214fde055c412dd881c282e543975a7cbc49
test: make ds-docs
bug: 120135854
2019-11-06 21:09:08 +00:00
Nikita Dubrovsky
b6b8c731a4 Merge "Add debug logging for cursor logic in TextView and Editor" 2019-10-31 19:56:21 +00:00
TreeHugger Robot
20277b8309 Merge "Set "today" and "selected" for Datepicker when using Calender" 2019-10-31 18:34:03 +00:00
Nikita Dubrovsky
05cfcc8ac4 Add debug logging for cursor logic in TextView and Editor
Test: manual
Change-Id: If5ddb575af3518aba2c4fbed3d6a040898c0d003
2019-10-31 08:15:23 -07:00
Yinglei Wang
6adfce55c2 Merge "remove accessibility event throttling in Progressbar" 2019-10-30 18:57:29 +00:00
yingleiw
7eef9a1adf Set "today" and "selected" for Datepicker when using Calender
Set the stateDescription to "today" if the date is today. Set selected
if the date is selected. Note that we didn't remove any information, so
this change doesn't need to wait until talkback changes get in.

Bug: 142361188, 141454158
Test: tested with date picker in calender mode. When the focus goes to
today, it announces "today, Oct. 22". When the focus goes to selected
date, it announces "selected, Oct. 22". When it is both today and
selected, it announces "select, today, Oct. 22".

Change-Id: Id210e22ec5ae2bc070c260c9632a605cf2a6236f
2019-10-24 15:27:41 -07:00