Commit Graph

1487 Commits

Author SHA1 Message Date
Jeremy Joslin
5519d7cf71 Check for REQUEST_NETWORK_SCORES instead of BROADCAST_NETWORK_PRIVILEGED.
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
BUG: 33752149
Change-Id: I7d91fa9a4f6ef4f9170c6af98567ce443c805e74
2017-01-06 15:42:57 -08:00
Fyodor Kupolov
51d34bf06a Merge "Always use multi-dex for FrameworksServiceTests" 2017-01-06 21:45:11 +00:00
Fyodor Kupolov
c0c1123124 Always use multi-dex for FrameworksServiceTests
Otherwise it exceeds ids limit:
ERROR: Dex writing phase: classes.dex has too many IDs. Try using multi-dex

Test: manual - device builds, tests are running
Change-Id: I042cd1b8cb8d41c8db055ba8c6ceb56eb592c30f
2017-01-06 13:36:40 -08:00
Makoto Onuki
2e83edb4b0 Merge "Revert "ShortcutManager: Floating shortcuts shouldn't have target activities."" 2017-01-06 21:32:35 +00:00
TreeHugger Robot
f51b4ff7b1 Merge "Make sure cleanup is always done when task is removed" 2017-01-06 21:00:19 +00:00
TreeHugger Robot
a8d123de10 Merge "Support for WindowContainer controllers and listeners" 2017-01-06 20:07:31 +00:00
Makoto Onuki
9fd9019cf1 Revert "ShortcutManager: Floating shortcuts shouldn't have target activities."
This reverts commit 106ff7a0a1.

Test: All the unit tests (ShortcutManagerTest1*) CtsShortcutHostTestCases and CtsShortcutManagerTestCases

Change-Id: Iadce2b3785cbf728daa60c4e2ff103e516d85896
2017-01-06 11:17:08 -08:00
Andrii Kulian
45a61fe529 Make sure cleanup is always done when task is removed
When Stack#removeImmediately() was called it also recursively
called Task#removeImmediately(), which remove tasks from stack.
This lead to Task#mStack reference being nullified, but task
dim layer user was still registered in DimLayerController.
Therefore there was a crash when dim layer animation occured.

This CL moves most of the logic from Task#removeIfPossible() to
Task#removeImmediately() to make sure that cleanup is performed
every time when task is removed.

Change-Id: Id8d72dc8c66b9eeefbf5c918cf0a0df4ea027fde
Fixes: 34052466
Test: bit FrameworksServicesTests:com.android.server.wm.TaskStackTests
Test: #testStackRemoveImmediately
2017-01-06 11:06:19 -08:00
Wale Ogunwale
26c0dfed7a Support for WindowContainer controllers and listeners
- WindowContainerController class allows a component outside window manager
to create a window container and communicate directly with it to make
changes. For example, the ActivityRecord class in activity manager uses the
AppWindowContainerController class to create and communicate with
AppWindowToken window container class which is its counterpart on the window
manager side.
- WindowContainerListener interface allows a component outside WM to get
notified of changes to a window container. For example, the ActivityRecord
class in AM implements the AppWindowContainerListener interface to get
notified of changes to the AppWindowToken container.

Bug: 30060889
Test: Existing tests pass and manual testing.
Test: bit FrameworksServicesTests:com.android.server.wm.WindowContainerControllerTests
Test: bit FrameworksServicesTests:com.android.server.wm.WindowContainerTests
Change-Id: I2896bfa46a80b227052528c7da8cf4e56beab4bc
2017-01-06 09:11:02 -08:00
Julia Reynolds
f35e3976e3 Allow apps to enable notification badging.
Test: runtest systemui-notification
Change-Id: Ia16d671d864d1eee902652e31f023e30dc6b7387
2017-01-06 10:57:51 -05:00
Narayan Kamath
5c50e86301 PackageManagerService: Implement packageParser cache in ParallelPackageParser.
We save about 2800ms of cold startup time over baseline on a marlin,
and ~1200 ms over the parallel parsing case.

                   warm     cold
		   ---------------
Baseline         : 1700ms   4300ms
Parallel         : 1400ms   2700ms
Cache            : 1000ms   1600ms
Cache & parallel : 900ms    1500ms

Note that further changes will improve the speed of cache processing.

This change also includes support for :
- a flag that been flipped in code (currently set to false).
- disabling the cache via a system property.
- wiping the cache on system upgrades.
- cache versioning.

Bug: 30792387

Test: FrameworksServicesTests
Test: manual timing

Change-Id: I281710c110af5307901dd62ce93b515287c91918
2017-01-05 19:15:31 +00:00
Nicolas Prévot
b4413f694f Merge "Make disallow add/remove managed profile restriction not global." 2017-01-05 14:54:45 +00:00
Nicolas Prevot
2ea46fe658 Make disallow add/remove managed profile restriction not global.
Otherwise: if the DO sets remove managed profile user restriction:
the profile owner of a managed profile cannot remove this managed
profile.

BUG:33854430
Test: adb shell am instrument -e class com.android.server.devicepolicy.DevicePolicyManagerTest -w
com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner
Change-Id: I90b2028ea627a2073298bf9ef3c07b4fdf8d13a1
2017-01-05 11:58:21 +00:00
Narayan Kamath
8af18a6fa3 Merge "PackageParser: Add serialization mechanism for parse results." 2017-01-05 09:55:40 +00:00
TreeHugger Robot
a9d0cfbcc9 Merge "Always place stacks below pinned stack" 2017-01-04 19:48:32 +00:00
Sunny Goyal
a532c3ff8c Merge "AppWidgetManager: direct add widget support." 2017-01-04 18:21:38 +00:00
Andrii Kulian
cd5dcb8b3d Always place stacks below pinned stack
When positioning or adding stacks we must make sure
that no stack is above pinned stack.

Bug: 34049027
Test: runtest frameworks-services -c com.android.server.wm.TaskStackContainersTests
Change-Id: Ic92a4e07e9cde42deed53912ac1419fde4ab2f08
2017-01-04 09:56:27 -08:00
Makoto Onuki
9bab1c4dd5 Merge "Get account features before taking lock" 2017-01-03 21:34:41 +00:00
Sunny Goyal
87a563e070 AppWidgetManager: direct add widget support.
Test: Manual test and all the unit tests:
adb shell am instrument -e class com.android.server.pm.ShortcutManagerTest1 -w com.android.frameworks.servicestests
... to test9
adb shell am instrument -e class com.android.server.appwidget.AppWidgetServiceImplTest -w com.android.frameworks.servicestests

Bug 32404406
Change-Id: Icd6d4cbd25d9cdf4508da725d95d6401cc3a46a7
2017-01-03 13:28:56 -08:00
Makoto Onuki
606da7778f Get account features before taking lock
Test: cts-tradefed run cts --skip-device-info --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker -a armeabi-v7a -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.AccountCheckHostSideTest
* without having Id49f2bd5dfa80ecf35b3a23c789100ade38c2656 *

Test: adb shell am instrument -e class com.android.server.devicepolicy.DevicePolicyManagerTest -w com.android.frameworks.servicestests

Bug: 33481725
Change-Id: I1e4dd9701a76ca366f86fdaf2fc6c282e9dbe5c1
2017-01-03 10:58:23 -08:00
Narayan Kamath
fb2afbf7fa PackageParser: Add serialization mechanism for parse results.
Also adds unit tests that assert that the cached value is equivalent
to the parsed value.

bug: 30792387
Test: PackageParserTest
Change-Id: Ibf6dfd1225243b436e3d7473170c2ccc31cfbbd7
2017-01-03 15:55:09 +00:00
Jeremy Joslin
586d36e610 Fix NetworkScoreServiceTest.testSystemRunning.
Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
BUG: 33905890
Change-Id: Idc92fe3669b0efdb20d3899ce4ce7bae70033aff
2016-12-29 15:00:23 -08:00
Andrii Kulian
77b165f0af Merge changes I2ac2cdba,I6ade7874
* changes:
  Fix crash when removing a display with activities
  Add positionChildAt method to WindowContainer
2016-12-28 20:41:34 +00:00
Jorim Jaggi
95f50d7314 Merge "Reenable test for presubmit" 2016-12-28 14:00:14 +00:00
Andrii Kulian
6cc1a1d65c Fix crash when removing a display with activities
When secondary display is removed current behavior is to
move its stacks to the primary display. This requires app
windows to be reparented, and there was a check missing
for app windows in DisplayContent.reParentWindowToken.

Test: bit FrameworksServicesTests:com.android.server.wm.DisplayContentTests
Test: #testMoveStackBetweenDisplays
Bug: 33677605
Change-Id: I2ac2cdba273134438c63385887a09c37d42017bb
2016-12-27 23:52:59 -08:00
Andrii Kulian
d276563b38 Add positionChildAt method to WindowContainer
Added method to change the position of a child among siblings.
It accepts int value, which can either specify a target position
or POSITION_TOP/POSITION_BOTTOM.
When child is moved to top or bottom, there is an option to also
perform same action on parents. This will effectively move the
entire branch of the hierarchy tree to top/bottom.

Test: bit FrameworksServicesTests:com.android.server.wm.WindowContainerTests
Test: #testPositionChildAt
Test: #testPositionChildAtIncludeParents
Test: #testPositionChildAtInvalid
Test: bit FrameworksServicesTests:com.android.server.wm.TaskStackContainersTests
Test: bit FrameworksServicesTests:com.android.server.wm.TaskStackTests
Change-Id: I6ade787487055f1c9a305afea64270c243196614
2016-12-27 19:52:44 -08:00
Lorenzo Colitti
6e22c50d7b Don't loop forever on zero-length ICMPv6 ND options. am: 2f157c421a
am: 9bfda163e2

Change-Id: Ice002fa65828eb738323425597dec1549c0f9a42
2016-12-23 08:32:03 +00:00
Lorenzo Colitti
9bfda163e2 Don't loop forever on zero-length ICMPv6 ND options.
am: 2f157c421a

Change-Id: Id8fbe5361b8a826677638213eed565be333f2c4d
2016-12-23 08:26:29 +00:00
Lorenzo Colitti
2f157c421a Don't loop forever on zero-length ICMPv6 ND options.
Bug: 33828433
Change-Id: Ie1905167126c8c8f3896eaa5e36cd006ca354e99
2016-12-23 13:54:50 +09:00
Daniel Nishi
bca4c7fc0d Fix a bug where the package stats query timeout may crash. am: cf76a16e66
am: e76b9dcb62

Change-Id: I341041c0edec8706cc449527b1dd130384a4ab01
2016-12-22 21:15:43 +00:00
Daniel Nishi
e76b9dcb62 Fix a bug where the package stats query timeout may crash.
am: cf76a16e66

Change-Id: Ibc146f89412387eb05a164c2a1969210fcea4262
2016-12-22 21:09:53 +00:00
Daniel Nishi
cf76a16e66 Fix a bug where the package stats query timeout may crash.
This adds a null-check to verify that we got real data before
trying to use it and increases the timeout time to reduce the
likelihood of timing out.

Test: FrameworkServicesTests
Bug: 33836034
Change-Id: Ia1ad4aba05c5c4fb8688fc9fc94df344f736e396
2016-12-22 11:32:33 -08:00
Jeremy Joslin
7af07643f3 Clear and restore the calling ID. am: 29ed4a99bf am: 3588b8d44c
am: 3f32d12be0

Change-Id: I2cbf3ca1ff0a743de1b08fad467027ec59333def
2016-12-22 19:21:45 +00:00
Alex Klyubin
aedc94bf11 resolve merge conflicts of a9888fc to master
Change-Id: I6ad00bf5bc1b18406b7fc8969c35bf7970fd1967
2016-12-22 11:20:26 -08:00
Jeremy Joslin
3f32d12be0 Clear and restore the calling ID. am: 29ed4a99bf
am: 3588b8d44c

Change-Id: I43b6f2899b5d82d4781937766907d6d7afa6b2bd
2016-12-22 19:10:46 +00:00
Alex Klyubin
a9888fc0c4 resolve merge conflicts of febd982 to stage-aosp-master am: 5c53fdb893
am: b824658494

Change-Id: Ic1dd2aef96889f0f68a55093cfb04b4d90f34818
2016-12-22 19:06:09 +00:00
Jeremy Joslin
3588b8d44c Clear and restore the calling ID.
am: 29ed4a99bf

Change-Id: Ie5752ca772e6f5c8fed8092d23e0604f44598b24
2016-12-22 19:01:43 +00:00
Alex Klyubin
b824658494 resolve merge conflicts of febd982 to stage-aosp-master
am: 5c53fdb893

Change-Id: Ib0878f0f17c3799ff9ffb92d7e85904fc91fdab7
2016-12-22 19:01:13 +00:00
Alex Klyubin
5c53fdb893 resolve merge conflicts of febd982 to stage-aosp-master
Change-Id: I40c27e3159b8f7acd60c6fa42509bb23d146b937
2016-12-22 10:20:23 -08:00
TreeHugger Robot
43769ddb2c Merge "Add DISALLOW_ADD_MANAGED_PROFILE to existing device owners" 2016-12-22 10:29:31 +00:00
Jeremy Joslin
29ed4a99bf Clear and restore the calling ID.
Clear and restore the calling identity in IPC methods after asserting
the caller has the required permissions.

Fixed 2 tests in NetworkScoreServiceTest that were failing due to a
recent refactor.

Test: runtest frameworks-services -c com.android.server.NetworkScoreServiceTest
BUG: 33781319
Change-Id: I562713df3d9455cdc02bf80a687940fb9daecd8f
Merged-In: Icd79751d12dcfe4af8026980aaa1f7bd463468dc
2016-12-21 13:39:10 -08:00
Julia Reynolds
7f41c150c3 Merge "Add badging support for channels." 2016-12-21 21:15:45 +00:00
Julia Reynolds
baff400fa5 Add badging support for channels.
In this iteration badges are a user opt in feature.
Known issue: all listeners will receive 'badge only' notifications.

Test: runtest systemui-notification

Change-Id: Ic7450bf4de5351cfdc72bd96ec946fe6e035035c
2016-12-21 21:12:23 +00:00
Jeff Sharkey
febd982cdd Merge "Avoid Calendar's unexpect change in snapToCycleDay()" 2016-12-21 21:11:20 +00:00
Amin Shaikh
9926363b09 Merge "Expose ScanResult#untrusted as a @SystemApi." am: a93e57f1ac am: a3943850ab
am: 471093b58e

Change-Id: I129d3abd329d9e00de1177ca39cf3ce0ff06946b
2016-12-21 20:10:30 +00:00
Amin Shaikh
471093b58e Merge "Expose ScanResult#untrusted as a @SystemApi." am: a93e57f1ac
am: a3943850ab

Change-Id: Id763d2f82e10dd5843258ef09d0e65824e2c2de6
2016-12-21 20:02:03 +00:00
Amin Shaikh
a3943850ab Merge "Expose ScanResult#untrusted as a @SystemApi."
am: a93e57f1ac

Change-Id: I9cac16dbceb36d6ff72e92d2ab8de20bd8d70e36
2016-12-21 19:56:19 +00:00
Amin Shaikh
3d18c621cb Expose ScanResult#untrusted as a @SystemApi.
- Expose ScanResult#untrusted to inform NetworkRecommendationProviders
  that a ScanResult does not correspond to a saved network.
- Add static construction methods and assertions to RecommendationResult

Test: runtest frameworks-services

Bug: 33490132
Change-Id: If7006040f63843c1c468c9d95c5c017383c5c5dd
Merged-In: If7006040f63843c1c468c9d95c5c017383c5c5dd
2016-12-21 11:46:22 -08:00
Shunta Sato
d18ffd8223 Avoid Calendar's unexpect change in snapToCycleDay()
Symptom:
Calendar object's certain field is unexpectedly changed after
using Calendar.add() method.

Detail and sample:
Following patch causes this issue.
- Switch network cycle calculation to use Calendar.
  https://android.googlesource.com/platform/frameworks/base/+/f2bead5

Call of Calendar.add() method might make a smaller field value
invariant. The smaller field means such a field of
Calendar.HOUR_OF_DAY, Calendar.MINUTE, Calendar.SECOND and so on
if Calendar.MONTH field is focused.
According to above, sometimes correct Calendar value won't be
acquired by original code.
To avoid unexpected change, it requires initialization toward
each smaller field after Calendar.add() call.

Solutions:
Calendar.DAY_OF_MONTH, Calendar.HOUR_OF_DAY, Calendar.MINUTE,
and Calendar.SECOND fields is set to 0 after added value to
Calendar.MONTH field.

Bug: 32724903
Author: Shigeki Yokomichi <shigeki.x.yokomichi@sonymobile.com>
Change-Id: I7af6391653be21786b662b2f8eaad10c413733c1
2016-12-21 12:44:30 -07:00
Allen Hair
b0d5ade11c Enable multi-dex for coverage builds to fix breakage
am: 77a51d1274

Change-Id: Ife18d443d4c6a7ffcdb183cee3f7317efafbab38
2016-12-21 18:44:08 +00:00