Commit Graph

103593 Commits

Author SHA1 Message Date
TreeHugger Robot
de659b3b13 Merge "Only grant visibility of protected broadcasts to system" into rvc-dev 2020-04-13 19:51:19 +00:00
TreeHugger Robot
4413b0edba Merge "SurfaceControlViewHost: Improve documentation" into rvc-dev 2020-04-13 19:37:29 +00:00
Robert Carr
20c23963a7 SurfaceControlViewHost: Improve documentation
Capturing the answers to some questions I received today in-to
source-code comments.

Bug: 153756455
Test: Comments only
Change-Id: I208ca0370267803bf546d654f5a8d4e0c25b6f11
2020-04-13 11:35:51 -07:00
Winson Chung
3908fb22b6 Merge "Send task description changed though task org taskInfoChanged" into rvc-dev 2020-04-13 16:58:07 +00:00
Ryan Mitchell
b8a61d13c2 Merge "Fail install when resources.arsc is compressed" into rvc-dev 2020-04-13 14:57:19 +00:00
Julia Reynolds
f5590f558d Merge "Add guidance on conversation notifications" into rvc-dev 2020-04-13 12:28:28 +00:00
Riddle Hsu
aec74e1a62 Merge "Do not unparcel bundle from application in LaunchActivityItem" into rvc-dev 2020-04-13 10:12:56 +00:00
Winson Chung
1df39e2cf6 Send task description changed though task org taskInfoChanged
- This removes the need for a separate task stack listener and aligns
  with other task info change properties
- Also implement equals/hashCode for the token so we can use it in
  containers

Bug: 148977538
Test: atest TaskOrganizerTests

Signed-off-by: Winson Chung <winsonc@google.com>
Change-Id: Ie035e6389fdbdc374c1a4b4a684758efa0cb7a9e
2020-04-11 00:01:05 -07:00
Treehugger Robot
67ac7abd21 Fix a theoretical NPE
Test: NetworkAgentTests
Bug: 153718627

Change-Id: I955b6dac6de48b12696dc640f131f5983ac552df
Merged-In: I08f57cce0cd85d5cd66e9a0ef948224290e9200e
(cherry picked from commit 31492c7087, aosp/1284575)
2020-04-11 03:26:27 +00:00
TreeHugger Robot
72a3d44773 Merge "Camera: Fix condition check for min/max zoom ratios" into rvc-dev 2020-04-11 02:19:12 +00:00
Yurii Zubrytskyi
207f1d3036 Merge changes I668e8664,Ia44f7e45 into rvc-dev
* changes:
  [incfs] Fix a crash in worker thread calling JNI
  [incfs] Make native library extraction async
2020-04-11 01:24:45 +00:00
TreeHugger Robot
c3721ac874 Merge "Deprecates the animatingBounds from WM to SysUI" into rvc-dev 2020-04-10 23:13:52 +00:00
Hongwei Wang
3c981f6eb7 Deprecates the animatingBounds from WM to SysUI
PipTouchHandler, similar to other components in SysUI, should be in-sync
with the destination bounds calculated within SysUI rather than WM.

Fixed also the empty movement bounds upon the first call to
PipTouchHandler#onMovementBoundsChanged. Together, this change should
fix the PIP not being lifted on IME show up. PipTouchHandlerTest is
updated correspondingly.

Bug: 153352899
Test: manually enter/exit PiP
Test: atest PipTouchHandlerTest
Change-Id: I2912af2a181b7fb57c6d90751744d46c6b3366d2
2020-04-10 13:47:14 -07:00
Julia Reynolds
7aca3b64aa Add guidance on conversation notifications
Test: make
Fixes: 153469444
Change-Id: I3df7fcdd03418bf8fe80c531385868d1d39409d8
2020-04-10 16:00:46 -04:00
Yurii Zubrytskyi
da208016d6 [incfs] Make native library extraction async
IncrementalService can create the library files beforehand, but
delay filling in their data. As it takes quite a while in
general (over a second in cases when the phone is busy), it's
better to run the unzipping and filling in a separate thread
and only make sure it finishes before the whole installation
process is complete.
This speeds up the megacity.apk installation by ~250-300ms,
1000-1100ms -> 750-800ms

Bug: 153513507
Test: adb install megacity.apk

Change-Id: Ia44f7e45b9e0abaebdfb6fe5352f9dcf29ab4ece
2020-04-10 12:30:49 -07:00
Riddle Hsu
3c3e0c659a Do not unparcel bundle from application in LaunchActivityItem
The bundle fields may contain custom Parcelables. And Bundle#size
will call unparcel that causes BadParcelableException from
LaunchActivityItem#hashCode and LaunchActivityItem#equals.

Since the bundle fields of LaunchActivityItem may not be significant
for being the accurate identity of the item, the bundle fields can
be treated roughly (empty or not) to avoid unparceling.

Fixes: 153737846
Test: atest FrameworksCoreTests:TransactionParcelTests#testLaunch

Change-Id: I7ec55bbfcffcd47cfb586ede8053ab411891902d
2020-04-11 02:21:10 +08:00
Cody Kesting
fb9ff36b95 Merge "Fix typo in VpnManager Docs." into rvc-dev 2020-04-10 15:52:10 +00:00
Ryan Mitchell
6cb79cdfb7 Merge changes from topic "invalidate_idmap" into rvc-dev
* changes:
  Fix InstallOverlayTests fail to install overlay
  Test that upgrading target apk invalidates idmap
  Invalidate idmap when target updates
2020-04-10 15:50:15 +00:00
TreeHugger Robot
fd09fe5cea Merge "Return actual failure to parse base APK" into rvc-dev 2020-04-10 15:28:13 +00:00
TreeHugger Robot
51ec322208 Merge "Add an empty IMM#windowDismissed(IBinder) for app compat" into rvc-dev 2020-04-10 15:10:43 +00:00
Yurii Zubrytskyi
4e21986e59 [incfs] Fix a leaked pending_reads FD
Bug: 153670585
Test: adb install/uninstall a dozen times
Change-Id: Iac05b5dc3792e55c2f103ac08bdd734b3b398882
2020-04-10 14:49:31 +00:00
Darryl Johnson
6c6d81a121 Merge "Temporal fix of the Android Auto orientation chaniging on phone's orientation change." into rvc-dev 2020-04-10 14:07:36 +00:00
Wei Sheng Shih
1a46294fdb Merge "Support addWindow as other user" into rvc-dev 2020-04-10 08:33:12 +00:00
Ming-Shin Lu
1c92e1f789 Merge "Trigger onTaskAppeared when a task started from recents becomes ready." into rvc-dev 2020-04-10 05:46:13 +00:00
Yohei Yukawa
7029cc3da8 Add an empty IMM#windowDismissed(IBinder) for app compat
It seems that there are several applications that call
InputMethodManager#windowDismissed(IBinder), which was recently
removed [1], then crash due to unhandled NoSuchMethodException
exception.

The most probable hypothesis that explains why these apps ended up
calling this method via reflection is trying to address object leaks
from InputMethodManager, which we have received reports then fixed all
the known issues [2][3][4][5][6].  There are several Internet articles
that claim calling InputMethodManager#windowDismissed(IBinder) can
*fix* such object leaks, which is in fact no longer necessary in
recent versions of Android.  However, it seems that some of such apps
didn't gracefully take care of cases where IMM#windowDismissed()
doesn't exist then ended up crashing due to unhandled
NoSuchMethodException.

Note also that AndroidX Activity (androidx.activity.ComponentActivity)
already implements a similar workaround [7] hence app developers no
longer need to work around by themselves.

Anyways, in order to avoid unnecessary crashes from apps that call
IMM#windowDismissed() via reflection, this CL re-introduce it as an
empty method.  As their goal is supposed to be clearing internal
fields within InputMethodManager to avoid object leaks, an empty
method is believed to be sufficient.

 [1]: Ib455704fe1e9d243f93190a84f230210dbceac2a
      970d9d2e0c
 [2]: Iad09cf5dbb7f6f156fd39ed243431432e00f8945
      4478de3c02
 [3]: Iaf3fe2c065b5bf91e49a729ba46262114bb6da88
      b13f015ab5
 [4]: I219394178e4172bc47864297f1418e677dba25e5
      5f05965f54
 [5]: Id6afc8fc64512225578c62557b96c7dc2e969adf
      0f3a99d837
 [6]: I8fabb30f14bcb2cd7019e29b6642b4562d49d248
      dff365ef4d
 [7]: I615e92f0c64b6d668b31f2c83527b7409a7bef6f
      b1bf8502e0574a4bfcf450235595372b7cb3778a

Fix: 152261618
Test: manually verified with apps in question
Change-Id: I599896a96267fc60a738eac31be02b770e10dff3
2020-04-09 22:38:04 -07:00
TreeHugger Robot
2a7091d896 Merge "Fine tune performance for notifyContentCapture()" into rvc-dev 2020-04-10 04:42:58 +00:00
Winson Chung
cb437ade00 Merge changes I7d2ca2a2,I9f1fc593 into rvc-dev
* changes:
  Fix a couple issues with previous CL (keeping tasks hidden)
  Keep task hidden until task appeared
2020-04-10 03:03:21 +00:00
TreeHugger Robot
c0404ff5e5 Merge "Pass inline suggestions renderer info Bundle to Frameworks and IME" into rvc-dev 2020-04-10 02:19:23 +00:00
Cody Kesting
b840c602ed Fix typo in VpnManager Docs.
Bug: 153364039
Test: n/a. Docs change only.
Change-Id: I8259bfc09735515f428bb41d69fedd3ea1961f79
Merged-In: I8259bfc09735515f428bb41d69fedd3ea1961f79
(cherry picked from commit 3150b04b67)
2020-04-10 00:30:38 +00:00
Winson Chung
1b5d055f2e Keep task hidden until task appeared
- If the task is previously not visible or has no visible children at
  the point when we start controlling it in the task org, hide the task
  until we send taskAppeared to ensure that the task org can reparent
  and show it otherwise we could see a flash of the task.

  This happens mainly from two cases:
  - when starting a new task with a given win mode, we show it and wait
    for first draw before notifying the task org
  - when transitioning into pip from swipe up, the activity is hidden
    and when it requests to enter pip is made visible again

  Since we are hiding the task w/ the pending transaction, we also need
  to defer all task org callbacks until that's applied to ensure proper
  lifecycle of the calls.
- Also skip app transitions for task org tasks for now

This reverts commit d2fb07e4f6.

Bug: 152809695
Bug: 152134460
Test: Open a bubble, ensure that we don't see the task in fullscreen
      first.  Enter pip, ensure that we don't see flash of the task
      before SysUI can fade it in.
Test: atest PipAnimationControllerTest
Test: atest TaskOrganizerTests
Test: atest SplitScreenTests
Change-Id: I9f1fc5931df1d69a7086c02b633347162cda94bf
2020-04-09 15:55:03 -07:00
Sergey Volnov
51ecd453b3 Merge "Fix Content Capture Data Share" into rvc-dev 2020-04-09 22:35:08 +00:00
Winson
36c4470a20 Return actual failure to parse base APK
This exposes errors directly, which mirrors what PackageParser
used to do. Just a leftover TODO from the refactor.

Bug: 153472626

Test: manual install broken APK and check the error is logged

Change-Id: I06804ad7396196e28ce2177a671d4eef3958e1d6
2020-04-09 13:51:37 -07:00
Adam He
89afcd6f5d Pass inline suggestions renderer info Bundle to Frameworks and IME
Bug: 146454892
Test: manual verification
Change-Id: I5db6c3795a4a295486e497f2d27eaa561e1a3887
2020-04-09 13:30:33 -07:00
Rob Carr
0a57530be1 Merge "ViewRootImpl: Pass buffer to finishDrawing when requested" into rvc-dev 2020-04-09 20:26:43 +00:00
Sergey Volnov
6c74f7cc9a Fix Content Capture Data Share
Fixing a typo in the previous commit: s/remove/put/

Bug: 153013604
Test: ran CTS tests on sdk_gphone_x86
Change-Id: Iabe8ce51f38ac921aa5cc0e78b559e4a512b9273
2020-04-09 21:23:03 +01:00
Hui Yu
d0139b01dd Merge "Document process capability in AppOps.md." into rvc-dev 2020-04-09 19:42:09 +00:00
lumark
04bceb99f1 Trigger onTaskAppeared when a task started from recents becomes ready.
In quick switch flows, launcher will first swipe task snapshot
through recents animation, and then start new task with custom animation
options through startActivityFromRecents after gesture finish detected,
and then finish recents animation finally.

But that way user may experience flickering before the new task launch
and recents animation finish.

To improve quick switch flickering, we ignore the new task's custom
animation from recents and generate task remote animation target,
and then trigger a callback for launcher to control/animate this
task surface, more like a part of RecentsAnimation,

Also, adding removeTask method for launcher can flexibility remove the
new task animation target once no need to animate, so that launcher
can decide when to finish recents animation.

Bug: 152480470
Test: manual as below steps:
  1) Doing quick switch task.
  2) Make sure launcher can receive onTaskAppeared callback.
  3) Make sure launcher calls removeTask successfully.
  4) Make sure launcher can finish recents animation after 3).
Change-Id: I0692a280a49719229fa8871509bad37a1343a00f
2020-04-10 02:20:03 +08:00
Ryan Mitchell
192400cf33 Fail install when resources.arsc is compressed
If an application targets R+, prevent the application from being
installed if the app has a compressed resources.arsc or if the
resources.arsc is not aligned on a 4-byte boundary. Resources tables
that cannot be memory mapped have to be read into a buffer in RAM
and exert unnecessary memory pressure on the system.

Bug: 132742131
Test: manual (adding CTS tests)
Change-Id: Ieef764c87643863de24531fac12cc520fe6d90d0
2020-04-09 11:01:54 -07:00
Fabian Kozynski
a35a860c36 Merge "Added Settings intents" into rvc-dev 2020-04-09 17:58:44 +00:00
Selim Cinek
279238f3c2 Merge changes I7dc8f5fd,Ia5262ca7 into rvc-dev
* changes:
  Fixed the transformation of min priority notifications
  Always use the largeIcon as avatar replacement
2020-04-09 17:55:27 +00:00
Pavel Grafov
c4adf5e87b Merge "Copy the remaining policies on migration." into rvc-dev 2020-04-09 17:30:36 +00:00
Nikita Ioffe
e9ed63aa92 Merge "Introduce static @hide PowerManager.isRebootingUserspaceSupportedImpl()" into rvc-dev 2020-04-09 16:39:54 +00:00
TreeHugger Robot
9f990dedb3 Merge "Add an API to set layer trace flags" into rvc-dev 2020-04-09 16:26:21 +00:00
Yuncheol Heo
8ecd6a377b Merge "Move multi window mode to the caller." into rvc-dev 2020-04-09 16:06:01 +00:00
Pavel Grafov
57c69d1e30 Copy the remaining policies on migration.
* accountTypesWithManagementDisabled
* disableScreenCapture

For security logging nothing has to be done since the state is
stored in a system property, just changed it so that the logging
will be started after the migration and only events for the
right user are logged.

Also removed the todo about hardening for power cut case, the
risk of additional complexity sees to outweight the benefit.

Bug: 149075700
Test: atest DevicePolicyManagerServiceMigrationTest
Change-Id: I3a58325f2d6f415e51998c5096c5fc123d26602d
2020-04-09 15:47:18 +01:00
Nikita Ioffe
57300d9057 Introduce static @hide PowerManager.isRebootingUserspaceSupportedImpl()
This method consolidates logic of testing whenever rebooting userspace
is supported in a place that can be used both from
PowerMager.isRebootingUserspaceSupported() API and from
PowerManagerService.reboot() implementation.

Consequently, this makes `adb shell svc power reboot userspace` also
benefit from that check, and fail userspace reboot on devices that don't
support it.

Also tweaked logic of ignoring RemoteException to take into account
userspace reboot.

Test: adb root
Test: adb shell setprop init.userspace_reboot.is_supported 0
Test: adb shell svc power reboot userspace & verified error message
Test: adb shell setprop init.userspace_reboot.is_supported 1
Test: adb shell svc power reboot userspace & verified no error message
Test: atest PowerManagerTest
Test: atest CtsUserspaceRebootHostSideTestCases
Bug: 152803929
Change-Id: I2d3a8e0ae1320c408a838c5c5fdf4cd977b167b3
2020-04-09 14:07:22 +01:00
TreeHugger Robot
bc98d3edb0 Merge "Enhance exception message on SQLiteCantOpenDatabaseException" into rvc-dev 2020-04-09 12:54:52 +00:00
Andrei-Valentin Onea
1775d16adb Merge "Add method to greylist" into rvc-dev 2020-04-09 11:17:11 +00:00
Charles Chen
5c082c998f Merge "Fix WindowContext leak" into rvc-dev 2020-04-09 07:39:29 +00:00
Yvonne Jiang
eb31eb5bae Merge "Fix secondary lock screen implementation such that DevicePolicyKeyguardService calls are made on the main (UI) thread." into rvc-dev 2020-04-09 07:26:48 +00:00