Commit Graph

10555 Commits

Author SHA1 Message Date
Chris Tate
a94c58642f Merge "API refactor: context.startForegroundService()" 2017-03-30 18:24:53 +00:00
Maurice Lam
7c61bd0fbc Merge "Make Notification.EXTRA_ALLOW_DURING_SETUP system API" into oc-dev
am: 257047b24b

Change-Id: I2c2efe34719c14cd3fc3ff55f91917a2141218d3
2017-03-30 18:11:07 +00:00
Maurice Lam
257047b24b Merge "Make Notification.EXTRA_ALLOW_DURING_SETUP system API" into oc-dev 2017-03-30 18:04:24 +00:00
Evan Rosky
2c449964f8 Merge "Allow ToolbarActionBar to pass-through unhandled keyShortcuts" into oc-dev
am: f114667f2d

Change-Id: I75deead3b2767d19f25378c4f34ca31c87027cae
2017-03-30 17:00:27 +00:00
Evan Rosky
f114667f2d Merge "Allow ToolbarActionBar to pass-through unhandled keyShortcuts" into oc-dev 2017-03-30 16:46:27 +00:00
George Mount
be99bf2cd4 Merge "Fix getting wrong instance when restoring non-config" into oc-dev
am: 8386603230

Change-Id: I7ee0bb17c62ec2a40c4f2e168f88296b7bc86989
2017-03-30 16:33:35 +00:00
George Mount
b81f36bb72 Merge "Make public getFragments() and onGetLayoutInflater() methods" into oc-dev
am: ce3cf36652

Change-Id: I4ebe9cd31732ea45e77e6bb0a640160a90c910b0
2017-03-30 01:37:30 +00:00
Nathan Harold
560c9ec724 Merge commit 'e45e328821ba' into oc-dev-plus-aosp
Change-Id: I30ad9038be8faee57e5d6b1391d9e70a966a9a77
2017-03-29 17:05:10 -07:00
Nathan Harold
e45e328821 Merge commit 'ce073d70bedc' into stage-aosp-master
am: 4fdc7d5ddd

Change-Id: I4bde8eedc986900096fc8429da2b195f907605c9
2017-03-29 23:56:06 +00:00
Evan Rosky
c46203785c Allow ToolbarActionBar to pass-through unhandled keyShortcuts
It was consuming all keyShortcuts which broke system hotkeys
like shift+tab.

In order to prevent the decor/phonewindow from creating menus,
this creates a dummy view in onCreatePanelView.

This also includes a change to Activity to not send KEYCODE_TAB
keystrokes to the defaulthandler. This was preventing keyboard
navigation from working on any activity that had a default
search fallback.

Bug: 32482282
Bug: 18021345
Test: Added a CTS test (ToolbarTest#testKeyShortcuts) for toolbar
      keyShortcuts. Verified Tab-navigation works in Play Store.
Change-Id: I5c732a2b21219157818bed49576debd20d5a8178
(cherry picked from commit b22faf524e)
2017-03-29 23:41:47 +00:00
Maurice Lam
96c1003e1a Make Notification.EXTRA_ALLOW_DURING_SETUP system API
Test: Manually tested setup wizard notifications continue to work
Bug: 34705874
Change-Id: If2bff20a74caeac5041d97f1656138676c93f554
2017-03-29 16:19:54 -07:00
Nathan Harold
4fdc7d5ddd Merge commit 'ce073d70bedc' into stage-aosp-master
Change-Id: I319034a5b77de5cf71de0e110bb17819fb907f1b
2017-03-29 16:04:31 -07:00
George Mount
5dd7c9af6d Fix getting wrong instance when restoring non-config
Bug 36679897

When restoring the non-config fragments, the wrong index was
being used to lookup the fragment fromt the list of active
fragment states.

Test: Ic862fd9670408dab09ab5817cdec21e91aef001b
Change-Id: Ic5a8e723041949e6d01d4f5ddc6d54e491143b59
2017-03-29 15:17:44 -07:00
George Mount
c7146beabe Make public getFragments() and onGetLayoutInflater() methods
Bug 34703669
Test: I846ef668e3dd7d664cfb56d2b9400467ba9b79f4
Change-Id: Ie202960ada86b25e964f98a639b5f5740c8fdb79
2017-03-29 14:58:42 -07:00
Christopher Tate
79047c62b5 API refactor: context.startForegroundService()
Rather than require an a-priori Notification be supplied in order to
start a service directly into the foreground state, we adopt a two-stage
compound operation for undertaking ongoing service work even from a
background execution state.  Context#startForegroundService() is not
subject to background restrictions, with the requirement that the
service formally enter the foreground state via startForeground() within
5 seconds.  If the service does not do so, it is stopped by the OS and
the app is blamed with a service ANR.

We also introduce a new flavor of PendingIntent that starts a service
into this two-stage "promises to call startForeground()" sequence, so
that deferred and second-party launches can take advantage of it.

Bug 36130212
Test: CTS

Change-Id: I96d6b23fcfc27d8fa606827b7d48a093611b2345
2017-03-29 13:12:09 -07:00
Nathan Harold
1afbef40c6 Add a Skeleton IpSecService
-Add IpSecService with the necessary glue to connect to netd
-Add code to retrieve IpSecService from System Server

Bug: 34811227
Test: Service boots (and dumpsys works), more via b/34811227
Merged-In: I4cdcb643421141202f77a0e2f87a37012de0cd92
Change-Id: I4cdcb643421141202f77a0e2f87a37012de0cd92
2017-03-29 11:31:27 -07:00
Tony Mak
ec319aba34 Introduce AMS.getLastResumedActivityUserId to fix work profile icon issue
Problem:
Work profile status bar icon feeature is relied on two callbacks
1. onForegroundProfileSwitch  (AMS.setResumedActivityLocked)
2. appTransitionStarting (WMS)

We assume callback 1 is always called before 2, but it is not the case.
These two callbacks are triggered by two handlers in two different threads,
and hence race condition happens.

Solution:
Not rely on onForegroundProfileSwitch to update mManagedProfileFocused
flag anymore. Query getLastResumedActivityUserId in appTransitionStarting.
Also, make sure mLastResumedActivity is updated before sending message
to WMS in setResumedActivityLocked.

Test: Start a work app, observe that the work icon is shown.
Test: Start a personal app, observe that work icon is gone.
Test: Dock the work app, tap on it (give it focus), observe that work
      icon is shown.
Test: Start a work app, switch user, can see the icon is gone. Switch back,
      icon is back.

Bug: 34159089

Change-Id: I2cee141d18e8b7d5607b26dd7a2fd5bc9cd0ebb3
2017-03-29 10:03:39 +00:00
Calin Juravle
5949d0dcdc Merge changes from topic 'dex' am: f665781c74
am: 8a4afd3dad

Change-Id: Ieb7d998721404040c0d2be010896a5dd15a3458c
2017-03-29 01:32:10 +00:00
Calin Juravle
8a4afd3dad Merge changes from topic 'dex'
am: f665781c74

Change-Id: I31c202a56d8f92634cc1d5d84106e27cb8c23bfd
2017-03-29 01:27:37 +00:00
Jeff Tinker
79a973f643 Revert "Make public getFragments() and onGetLayoutInflater() methods"
This reverts commit 599be3d01e.

This change is being reverted because it broke git_master build.

Change-Id: I54ab9cd3d9e08dcf870f472fda08cc44e57986d0
bug: 34703669
2017-03-29 01:25:06 +00:00
TreeHugger Robot
c8d8c27c68 Merge "Make public getFragments() and onGetLayoutInflater() methods" into oc-dev 2017-03-28 23:43:23 +00:00
Calin Juravle
a9f46f76af Register secondary dex files for JIT profiling
Test: boot, and check that profiles get recorded for secondary dex files

Bug: 32871170
Bug: 26719109

(cherry picked from commit f5a7bfc8d5)

Merged-In: I2de23ef44eee3f1783ae698821f1c6d88c66c9a6
Change-Id: Id9bbd630b8485dc17eeef846295458df5cfe446a
2017-03-28 16:00:21 -07:00
TreeHugger Robot
36e2483663 Merge "Add Configuration param to onMovedToDisplay" into oc-dev 2017-03-28 21:36:40 +00:00
Calin Juravle
d9732c8dbb Move DexLoadReporter out of LoadedApk
The DexLoadReporter was part of LoadedApk in order to lazily initialize
it when the first class loader of the app was created. However there's
no real association between the two and doing the initialization in
LoadedApk buys us nothing.

Extract the reporter in its own class and set it to BaseDexClassLoader
during bindApplication stage.

Test: boot, and check that loaded dex files are reported

Bug: 32871170
Bug: 26719109

(cherry picked from commit 37dfc8ee3e)

Merged-In: I9a0e734ae4c16d5d0979aa6d0061fbc9b6e144f6
Change-Id: I9a0e734ae4c16d5d0979aa6d0061fbc9b6e144f6

# Conflicts:
#	core/java/android/app/LoadedApk.java
2017-03-28 13:37:15 -07:00
Chad Brubaker
336ae5b616 Add ACTION_EPHEMERAL_RESOLVER_SETTINGS
This Intent will be used in Settings to show the settings UI for the
Ephemeral resolver. Settings can get the correct component to send the
Intent to by calling
PackageManager.getInstantAppResolverSettingsComponent

Bug: 35918998
Test: Boots
Change-Id: I0edcf85704f2c19e0ee27f91b6ef057d52e32778
(cherry picked from commit aa49cb86e6)
2017-03-28 20:34:55 +00:00
Evan Rosky
3473647f7d Merge "Allow ToolbarActionBar to pass-through unhandled keyShortcuts" 2017-03-28 19:38:45 +00:00
Torne (Richard Coles)
758f80ea43 Merge "Support loading a stub WebView using a donor package." into oc-dev am: 7ec7ef2ba3
am: 07cb93dc26

Change-Id: Ieadf02a034f991c3f7c6f745067eaa316a8dcbcf
2017-03-28 17:29:23 +00:00
Andrii Kulian
e5c58eefb1 Add Configuration param to onMovedToDisplay
To be consistent with other multi-window callbacks adding
Configuration param to the onMovedToDisplay, so that app
developer can handle configuration change at the same time
when it receives a notification about move.

Bug: 36649499
Test: android.server.ActivityManagerDisplayTests
Test: #testOnMovedToDisplayCallback
Change-Id: I80c765473bfc09ea1fb7aa4e2e77baf3b21606b8
(cherry picked from commit 2c32a11a71)
2017-03-28 17:28:17 +00:00
Andrii Kulian
3868b38999 Merge "Add Configuration param to onMovedToDisplay" 2017-03-28 17:26:41 +00:00
TreeHugger Robot
7ec7ef2ba3 Merge "Support loading a stub WebView using a donor package." into oc-dev 2017-03-28 17:11:26 +00:00
George Mount
599be3d01e Make public getFragments() and onGetLayoutInflater() methods
Bug 34703669

Test: I71856306a7bb67aacb84be17165e7e095653c20a
Change-Id: I41999d0f5e6d75afebbbf67ad5bf49fa0cca509e
2017-03-28 16:38:08 +00:00
Amith Yamasani
759922d9db Revert "Logging to track #36406078"
Not needed anymore, since the bug was found to be in the binder driver.

This reverts commit 9afb1fc495.

Change-Id: I3891866f6e30a3f3391df8005e56bf9b9777b3a6
(cherry picked from commit ab5523f337)
2017-03-28 16:35:12 +00:00
Amith Yamasani
b2b9ac2c71 Merge "Revert "Logging to track #36406078"" 2017-03-28 16:32:25 +00:00
Torne (Richard Coles)
0452670374 Support loading a stub WebView using a donor package.
Support loading a WebView package which specifies the name of a "donor"
that provides missing files. This allows a preinstalled stub WebView to
function by loading its code and assets from the preinstalled Monochrome
implementation, as long as the versions are close enough that the
manifest contents are compatible, which should be fine since
preinstalled versions will match.

To do this, we replace the stub's code paths in AppplicationInfo with
the donor's, so that all Java and native code and resources are loaded
from the donor APK at runtime instead of from the (mostly empty) stub.

To get the ClassLoader with the modified path cached as if it was the
regular path, we introduce a new "cacheKey" parameter in
ApplicationLoaders.

Bug: 21643067
Test: build "new" stub WebView upstream in chromium and test loading
Change-Id: I08cc9122b1c9def3e1206974f3e0e8973cca3419
2017-03-28 16:21:10 +00:00
Andrii Kulian
2c32a11a71 Add Configuration param to onMovedToDisplay
To be consistent with other multi-window callbacks adding
Configuration param to the onMovedToDisplay, so that app
developer can handle configuration change at the same time
when it receives a notification about move.

Bug: 36649499
Test: android.server.ActivityManagerDisplayTests
Test: #testOnMovedToDisplayCallback
Change-Id: I80c765473bfc09ea1fb7aa4e2e77baf3b21606b8
2017-03-27 19:25:24 -07:00
TreeHugger Robot
a2bd52aca3 Merge "Fix issue with task overlay activities not finishing." 2017-03-28 02:02:34 +00:00
Winson Chung
6954fc9a7e Fix issue with task overlay activities not finishing.
- The task overlay activity should only exist when there are activities
  present in the task.  When the last such activity is finished, we should
  remove the whole task entirely including the task overlay.
- Exposing the task overlay apis to CTS

Bug: 36507456
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testFinishPipActivityWithTaskOverlay
Change-Id: I1dabe7782fb6769a90d832664e8052be158041e1
2017-03-27 13:34:53 -07:00
TreeHugger Robot
5e01870015 Merge "Unbind from service on app killed and dedup association requests" 2017-03-27 18:43:37 +00:00
Michal Karpinski
aa870a4782 Merge "Add support for key-value packages to adb backup/restore." 2017-03-27 09:28:05 +00:00
TreeHugger Robot
89000cf644 Merge "Another buggy app is already targeting O." 2017-03-26 21:56:51 +00:00
Jeff Sharkey
4498e03d2b Another buggy app is already targeting O.
Bug: 36612878
Test: builds, boots
Change-Id: I161a58bf972a0af327fb216d041a7e46d33c0d2e
2017-03-26 14:15:51 -06:00
Felipe Leme
63d9831020 Merge "Make auto-fill UI robust" 2017-03-25 00:36:48 +00:00
Johan Toras Halseth
b59a4b85ad Add support for key-value packages to adb backup/restore.
For adding CTS tests for packages having key-value backup agents, we add
support for key-value backups to the adb backup/restore command.
Previously, packages not supporting fullbackup would just be skipped on
this command. Now, by adding the -keyvalue flag to the adb backup command,
packages supporting key-value will also be added to the resulting
tarball. Similarly, if the tarball being supplied to adb restore
contains data from key-value packages, it will be restored.

This will later be utilized for writing CTS tests for such packages.

Test: adb backup -includekeyvalue -all && adb restore backup.ab

Change-Id: I7b4ccfb7072d01d29a888952145d7cce90a4f59e
2017-03-24 23:51:48 +00:00
TreeHugger Robot
bbf038bc5e Merge "Remove "Allow persistent changes to the vendor overlay theme"" 2017-03-24 22:25:20 +00:00
Felipe Leme
4753bb0c34 Make auto-fill UI robust
Now the autofill UI tracks the movement of the anchor view,
both real and virtual and while still preventing the filled
app from accessing the chooser UI. This was achieved by using
a popup window in the app process to determine the window
location and adding a window presenter interface to popup
window that controls the actual window addition, removal, and
update which is implemented by the system server.

Test: all autofill CTS tests pass

bug: 36392498
bug: 35708258
bug: 34943932
fixes: 36039182
fixes: 36493078

Change-Id: I0321913b2e2e759f4b17003bf85cb873e63a467c
2017-03-24 15:16:28 -07:00
Eugene Susla
a38fbf63fd Unbind from service on app killed and dedup association requests
1. Listen to calling package binder death stopping the scanning on that.
2. Don't restart scanning when a request with the same values was made.

Bug: 30932767
Test: 1.:
  - Using a test app start scanning and kill the app.
  - In debug mode ensure that DeviceDiscoveryService#stopScan gets triggered
2.:
  - Start scanning and rotate the device while device chooser is visible
  - Ensure no visible loss of state is happening
Change-Id: If126a2c963da90172a956fbd88e6b3dcd7ac8b01
2017-03-24 14:03:17 -07:00
TreeHugger Robot
31426a2e29 Merge "Allow system UID to call isSecurityLoggingEnabled()" 2017-03-24 19:11:17 +00:00
TreeHugger Robot
ec9aea293a Merge "Do not reuse fragment indices." 2017-03-24 15:49:57 +00:00
Kevin Schoedel
28eae8e551 Manage controller connection from VrCore to VrWindowManager.
Use VrManager as a proxy to pass the controller data file descriptor
from VrCore to VrWindowManager, since the latter is a purely native
service with no Java visibility.

This is intended to be replaced by moving the relevant parts of
VrWindowManager into VrCore (b/36506799).

Bug: 35619424
Test: manual on device
Change-Id: I9545349893ed9b23de4ba8d3cb61c7d403ad0b97
2017-03-24 15:10:29 +00:00
Bartosz Fabianowski
0ec0000c22 Allow system UID to call isSecurityLoggingEnabled()
This CL allows code running under the system UID to call
isSecurityLoggingEnabled(), so that Settings can find out whether
logging is on or off.

Bug: 36584321
Test: m RunSettingsRoboTests

Change-Id: Icf8b7d6cef0f4e23f57bcf0498ffdcf124d16d38
2017-03-24 15:17:28 +01:00