Commit Graph

7215 Commits

Author SHA1 Message Date
TreeHugger Robot
44efac310a Merge "Implement tooltip support in View" 2016-11-22 22:15:46 +00:00
Fyodor Kupolov
9b2cdd9be0 Merge "Additional boot metrics" 2016-11-22 17:45:01 +00:00
Vladislav Kaznacheev
f847ee3c3d Implement tooltip support in View
Adding View.setTooltip/getTooltip and 'tooltip' layout attribute.
Following Material Design spec for styles and behavior.

Bug: 31515376
Test:  cts-tradefed run singleCommand cts -m CtsViewTestCases
  --test android.view.cts.TooltipTest

Change-Id: I2d2527f642cd7446ffc88d4beffc7b81d7a2f6d6
2016-11-22 09:32:07 -08:00
Fyodor Kupolov
3235e0c2ee Additional boot metrics
Extracted duration measurement functionality into BootTimingTraceLog.
It is now shared between system_server and zygote.

Log the following metrics to tron:
- boot_zygote_init - Time in milliseconds to boot into Zygote init stage.
- boot_android_init - Time in milliseconds to boot into Android init stage.

Test: manual - device boots, metrics are logged to system/event log
Bug: 32780225
Bug: 31115337
Change-Id: I600ac7fc83d35fa226ac92c37cc4b19192b25f59
2016-11-21 17:17:34 -08:00
Torne (Richard Coles)
2c0dc3e094 Merge "Precreate the classloader for the WebView." am: 566b1c80e4 am: 1feb782f01 am: 9565860b08
am: 7e17c6b0f1

Change-Id: Ie512327827e48319b3244a8d3041cb78538109d3
2016-11-21 17:18:55 +00:00
Torne (Richard Coles)
7e17c6b0f1 Merge "Precreate the classloader for the WebView." am: 566b1c80e4 am: 1feb782f01
am: 9565860b08

Change-Id: I070288a127cbaa08f05b49f66e23ea0ec298040b
2016-11-21 17:13:45 +00:00
Torne (Richard Coles)
9565860b08 Merge "Precreate the classloader for the WebView." am: 566b1c80e4
am: 1feb782f01

Change-Id: Iec0bf848e4c25afc6a6b9ee83339a03f314adee9
2016-11-21 17:08:46 +00:00
Torne (Richard Coles)
1feb782f01 Merge "Precreate the classloader for the WebView."
am: 566b1c80e4

Change-Id: Ic79079748dae515cb8d89ef99148755ac65f1d47
2016-11-21 17:04:22 +00:00
Torne (Richard Coles)
3b6ca99b10 Precreate the classloader for the WebView.
We want to create the classloader for the WebView in advance in the
zygote so that it can preload Java and native code for its children, but
the zygote can't talk to the package manager (so doesn't have a
PackageInfo for the APK) and also doesn't have an ActivityThread, so
constructing a LoadedApk is difficult.

Instead, we use the fact that ApplicationLoaders contains a
process-global cache of classloaders for APKs, and prepopulate a cache
entry without constructing a LoadedApk. This requires making
ApplicationLoaders public. To calculate the correct library paths from
the information the zygote has, we reuse the logic in LoadedApk (which
is already public, and just needs a small change to allow a null
ActivityThread when checking for instrumentation).

The other parameters for classloader creation (target SDK, bundled app,
etc) are hardcoded to usable values for the WebView's case. WebView
never needs to use any system libraries that aren't public so claiming
it's not bundled is fine even when that isn't actually true, and WebView
will always target the current platform API level.

Once the classloader is created, look up the factory class and call
preloadInZygote on it to give it a chance to preload the native library
and do other shared initialisation.

Bug: 21643067
Test: enable multiprocess WebView, examine librank output to see sharing
Change-Id: I696ead637e3f7382bcc58cfaf61eac5921862015
2016-11-21 15:04:13 +00:00
Adrian Roos
f9d13f6d7a Doze: Add plugin hook
Test: mmm vendor/google_experimental/users/roosa/DozePlugin/
Change-Id: I7ea55954f0c07be932e8ee7037e03b7c01cc1108
2016-11-18 15:59:00 -08:00
TreeHugger Robot
b11f283088 Merge "Use safe access to OnPreDrawListener." 2016-11-16 17:20:07 +00:00
George Mount
f0b46b9540 Use safe access to OnPreDrawListener.
Bug 32472451

It is important to remove an OnPreDrawListener from the correct
ViewTreeObserver. When a View is added to the view hierarchy, the
initial ViewTreeObserver is not active. The listener must then be
removed from the current OnPreDrawListener. When a View has been
removed from the hierarchy, it is important to remove the listener
from the orignal ViewTreeObserver.

Test: cts-tradefed run singleCommand cts -d --skip-preconditions
--skip-connectivity-check -m CtsUsageStatsTestCases
Test: cts-tradefed run singleCommand cts -d --skip-preconditions
--skip-connectivity-check -m CtsFragmentTestCases

Change-Id: I735f71d2d9c84e86ef846aab0088a8651300fbe8
2016-11-15 15:00:53 -08:00
Sudheer Shanka
2250d56a0b Rename MountService to StorageManagerService.
Bug: 30977067
Test: Existing tests pass
Change-Id: Ieac0f11c2b249dcd60441b14c1f391e6f8131d42
2016-11-15 12:43:37 -08:00
Fyodor Kupolov
3bfef01864 Merge "Control privileged permissions for priv-apps" 2016-11-15 19:29:14 +00:00
Fyodor Kupolov
964d2ebb94 Control privileged permissions for priv-apps
Added support for privapp-permissions config element. It allows to explicitly
control what privileged permissions applications should be granted.

Feature is controlled by ro.control_privapp_permissions property.
Possible values:
- 0/false, the feature is completely disabled - signature|privileged
  permissions are granted automatically without logging. *Default behavior*
- 1/true, enforce that only whitelisted permissions are granted. Only
  devices with ro.control_privapp_permission=1 will pass CTS tests.

Test: Manual
Bug:31008485
Change-Id: I93a8c2782cc72b3953f32c237086d08d82ac0d5b
2016-11-14 18:06:15 -08:00
Wale Ogunwale
7c73dd6a20 Merge "Removed WallpaperController dependency on WindowList." 2016-11-15 01:19:41 +00:00
Sudheer Shanka
dc589ac82b Update usage of ActivityManagerNative.
- Remove references to ActivityManagerProxy.
- Add isSystemReady to ActivityManager.

Bug: 30977067
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test android.server.cts
      adb shell am instrument -e class com.android.server.am.ActivityManagerTest,com.android.server.am.TaskStackChangedListenerTest \
          -w com.android.frameworks.servicestests/android.support.test.runner.AndroidJUnitRunner
Change-Id: I07390b6124fb1515821f5c0b37baf6ae74adc8fa
2016-11-14 11:27:12 -08:00
Wale Ogunwale
f4ebe2e2cc Removed WallpaperController dependency on WindowList.
WallpaperController now accesses the container hierarchy directly
to determine the state of the wallpaper windows and targets.

Bug: 30060889
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test \
      android.server.cts.ActivityManagerTransitionSelectionTests

Change-Id: Ib70beaf340f257ad4e1093cc127f81e7adf41636
2016-11-14 11:03:52 -08:00
Winson Chung
d5a01599f7 Fixing issue where PIP did not stay minimized after rotation.
- Ensure that we reapply the minimized offset after applying the snap
  fraction to the rotated bounds
- Fixing small issue where we weren't bottom aligning the PIP when the
  visible IME changes size (but is not made invisible)
- Also fixing an issue where the touch gesture continually allowed
  swiping offscreen even after dragging the PIP a distance. Now, if no
  gesture handles the drag, then the default gesture will disallow
  offscreen dragging once it handles the move.
- Shrinking PIP slightly to fit proportions of screen.

Test: Enable minimization in SysUI tuner, put PIP into minimized state,
      rotate the screen.  This is not final UX and the CTS tests will
      be updated to reflect this behavior once it is final.

Change-Id: I15c851a0bcf5f867289bc5ad50d298f82a103308
2016-11-11 16:25:04 -08:00
Winson Chung
fa7053789f Adding experiment for minimized pinned stack.
- Also refactoring the PIP touch handling to be independent gestures

Test: Enable the setting in SystemUI tuner, then drag the PIP slightly
      offscreen. This is only experimental behaviour, and
      android.server.cts.ActivityManagerPinnedStackTests will be updated
      accordingly if we keep this behavior.

Change-Id: I5834971fcbbb127526339e764e7d76b5d22d4707
2016-11-10 23:09:17 +00:00
Selim Cinek
2d29dc66bc Fixed a bug with the emergency affordance in multi user am: 0294f9e39b
am: 00b6a1dded

Change-Id: I6e50a09eedb9acecab481d615e2d63c5508b1268
2016-11-09 23:24:50 +00:00
Selim Cinek
00b6a1dded Fixed a bug with the emergency affordance in multi user
am: 0294f9e39b

Change-Id: Ib23d37b6ac5cc32aa77aa099c3fa2937ff3570d3
2016-11-09 23:19:19 +00:00
TreeHugger Robot
c4f65e0da8 Merge "Move dump() to dumpAsync(), more oneway calls." 2016-11-09 21:08:01 +00:00
Jeff Sharkey
850c83e6da Move dump() to dumpAsync(), more oneway calls.
When calling out to dump services hosted by external apps, use
dumpAsync() to avoid hanging if the remote process is wedged.

Test: builds, boots, runs with minimal logs triggered
Bug: 32715088
Change-Id: I70aa2666ae21dae8f09ded2063bed359c0b210c5
2016-11-09 12:25:48 -07:00
Tamas Berghammer
67387af732 Merge "Update package names to work with the proto3 compiler" 2016-11-09 13:38:58 +00:00
TreeHugger Robot
c62ca218ba Merge "Add AppFuseBridge class to the system service." 2016-11-09 01:49:23 +00:00
Tamas Berghammer
383db5ebcc Update package names to work with the proto3 compiler
Bug: b/28974522
Change-Id: I5f3adf4946ee4ba1e09e4f40afe83c151405972a
2016-11-08 14:06:09 +00:00
Daichi Hirono
3ff1c01cae Add AppFuseBridge class to the system service.
Bug: 29970149
Test: None
Change-Id: I1d40d8e3aec1c57a31d5ae66b33305990dc86b67
2016-11-08 13:19:00 +09:00
Phil Weaver
964c68e03a Send accessibility event on window title change.
Forcing the layout params to be sent to
WindowManagerService, and from there to accessibility
to generate the event.

Bug: 27857482
Test: Adding corresponding CTS.
Change-Id: I24fc97e16b95799259e4c472b6f1052a1dd00a56
2016-11-07 15:12:33 -08:00
TreeHugger Robot
3e8431f1f2 Merge "Move IActivityManager to aidl." 2016-11-04 22:24:12 +00:00
Fyodor Kupolov
0995958fa5 Merge "Do not call parseInt if value is empty" 2016-11-04 21:44:17 +00:00
Sudheer Shanka
fc46e9b643 Move IActivityManager to aidl.
Bug: 30977067
Test: Existing tests are passing, dump commands still working.
Change-Id: I9cf81c4d381ebce14a6c701e409cbb269f2ff1fb
2016-11-04 10:43:25 -07:00
Selim Cinek
0294f9e39b Fixed a bug with the emergency affordance in multi user
The emergency call was not launched in the current user
and therefore was only launching once the user had switched.

Change-Id: If6f3bcf77d88a0658b6e0f91f7e4da5d6264b04f
Fixes: 32424103
Test: manual: switch to secondary user and launch emergency affordance
2016-11-03 14:58:01 -07:00
Winson Chung
dff5c08bfd Experiment for snapping PIP to closest edge.
Test: Enable in SysUI tuner, drag PIP.  This is only experimental to help
      figure out what UX we want to keep.

Change-Id: I0d6f2f0c5909d6a76aae4a8fb84c5076f6996fdd
2016-11-02 18:25:29 -07:00
TreeHugger Robot
4cd3e8c0a9 Merge "Fixing issue with PIP while IME is showing." 2016-11-02 20:08:33 +00:00
Winson Chung
14fefc26d3 Fixing issue with PIP while IME is showing.
- Unifying logic to ensure that the PIP is moved consistently as its
  movement bounds are shifted.  This is done by adding a snap fraction
  which is a fraction relative to one set of movement bounds, and applied
  to a new movement bounds.  This is flexible to work with all of the
  current snap modes being tested.
- Fixing issue where you can drag out of bounds when touching the PIP
  before the IME shows.

Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testPinnedStackOffsetForIME
Change-Id: Ie68c1ca599f6196726b8224585974a0972b93701
Signed-off-by: Winson Chung <winsonc@google.com>
2016-11-02 11:24:11 -07:00
Jorim Jaggi
8d78693157 The big keyguard transition refactor (6/n)
Cleanup:
- Make sure all the state is nicely dumped.
- Remove some unused stuff.
- Fix a flicker when occluded -> unlocked

Bug: 32057734
Change-Id: Id87e26adccef740d608b325c2dc1f6db14dd4ec3
2016-11-01 15:36:40 -07:00
Fyodor Kupolov
9f9bf95dee Do not call parseInt if value is empty
Filling in stack trace when creating exception is expensive

Test: non-functional change, device boot ok
Bug: 30792387
Change-Id: Iccca26dec43370971a732068bd4d7053486da7a0
2016-11-01 11:31:46 -07:00
Andreas Gampe
8151d4fc65 Merge "Zygote: Avoid string concatentation for systrace" am: 8bcd159234 am: fdfc79a878 am: 8a8f33416b
am: f836fec287

Change-Id: I767c6f790412c2453ed1a4288548fe6139113dbe
2016-11-01 17:33:24 +00:00
Andreas Gampe
8a8f33416b Merge "Zygote: Avoid string concatentation for systrace" am: 8bcd159234
am: fdfc79a878

Change-Id: I105f07f2b2ca925139da6fc78641ee486eb68410
2016-11-01 17:24:19 +00:00
Andreas Gampe
fdfc79a878 Merge "Zygote: Avoid string concatentation for systrace"
am: 8bcd159234

Change-Id: I484e5a56b790f57d097970f727959438debafafb
2016-11-01 17:19:44 +00:00
Winson Chung
34c5c1386c Fixing rebase problem.
Test: Manual, Build fix.
Change-Id: Ibf72fea690f368220e76c5856a906bb1787ee000
2016-10-31 14:19:18 -07:00
Winson Chung
655332c641 Creating PinnedStackController.
- Creating a PinnedStackController to keep track of the state of the PIP
  to prevent changes in the system (ie. IME showing) and user interaction
  from clobbering each other.
- Refactoring calls in AM into WM/controller

Test: android.server.cts.ActivityManagerPinnedStackTests

Change-Id: Ie59dfd45d5c54764ba69a589b3b8148845e92cc3
Signed-off-by: Winson Chung <winsonc@google.com>
2016-10-31 13:21:55 -07:00
Andreas Gampe
c425362049 Zygote: Avoid string concatentation for systrace
Avoid the allocation of an unneeded string. With more than 4000
classes being preloaded, this adds up.

Test: m
Test: device boots
Change-Id: I61f10f61ebdd08d17e09aaedd8bf54cc40c41838
2016-10-28 18:19:30 -07:00
John Reck
1952e2dc9b Merge "Add SurfaceHolder#lockHardwareCanvas()" 2016-10-28 19:38:45 +00:00
John Reck
6bc7014210 Add SurfaceHolder#lockHardwareCanvas()
Bug: 26988043
Test: SurfaceViewTests#testSurfaceHolderHardwareCanvas CTS test
Change-Id: I3e5352d498dbe2fc56a18ca27360d129a14c7784
2016-10-27 14:13:44 -07:00
Winson Chung
cd1ff64683 Ensure PIP retains bounds on device rotation.
- When device rotates, ensure that the PIP continues to show in the
  same aspect ratio, snapped to the same logical snap point.
- Move common snapping code to policy so that it can be shared between
  SystemUI and the framework.

Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testPinnedStackInBoundsAfterRotation

Change-Id: I2d9f1a2dc077a55c39acc1ccba982c255e2ff3a4
2016-10-26 12:53:01 -07:00
Andrew Scull
22851dbcb2 Merge "Refactor password metric computation." 2016-10-25 09:04:58 +00:00
Hugo Benichi
58a7220b89 Merge "TokenBucket for rate-limiting and throttling" 2016-10-24 04:48:37 +00:00
Robert Sesek
02bf0b6dbc Merge "Create the WebViewZygote and implement WebViewZygoteInit." am: 8be2850546 am: f80fab010a
am: aa544e975e

Change-Id: I561fff0f56bdbfdeb6c92c11c3fce12cf3fe28be
2016-10-22 03:22:50 +00:00