2621 Commits

Author SHA1 Message Date
Chris Craik
52ca5a6b08 Merge "Remove isolated z volume test" 2014-04-11 22:46:25 +00:00
Chris Craik
dcc206dd76 Remove isolated z volume test
Change-Id: I757cd9445b7e8f564b5f1357d3e5c17032daf17e
2014-04-11 14:20:08 -07:00
Jeff Brown
4e5c089ef3 resolved conflicts for merge of 337e764d to master
Change-Id: I8168dbf42b68c2f7b5ccb300e0080dddc627af26
2014-04-11 01:33:20 -07:00
Jeff Brown
337e764deb am f24687e2: Merge "Plumb display power state through display manager." into klp-modular-dev
* commit 'f24687e2731811fd0e3803b691fd47a659f89329':
  Plumb display power state through display manager.
2014-04-11 03:49:37 +00:00
Jeff Brown
037c33eae7 Plumb display power state through display manager.
Declare a new method, Display.getState() to retrieve the actual
power state of a display.

Improved documentation for Intent.ACTION_SCREEN_ON and
Intent.ACTION_SCREEN_OFF to clarify what they really mean in
terms of the interactive state of the device.

Deprecated PowerManager.isScreenOn() and replaced it with
PowerManager.isInteractive() with a more suggestive name and
better documentation.

Redirect display power state changes to go through the display
manager first and only then head over to the power manager for
legacy compatibility.

Eliminated the bright here and woke here policy flags since they
were unused.  Simplified the input dispatch policy somewhat.

Ensure that screen wake locks are respected up until the point
when dozing really begins.

Fixed a regression in DreamService where onDreamingStarted
might be called before onWindowAttached.

Bug: 13133142
Bug: 13472578
Bug: 13929355
Bug: 13760290
Change-Id: Iabef96921dd554ce3768fb18619cefc3230b5fb0
2014-04-10 20:46:14 -07:00
Alan Viverette
4b1a7c203d Fix build breakage
Change-Id: I73d9ff5f38986b7acf83b85c1989203f472bc5fd
2014-04-10 14:28:30 -07:00
Alan Viverette
4b3988d159 Cleaning up VectorDrawable
Use argb evaluation method from animation package, lazily create paint,
set default for stroke line cap and join. Fix scaling to bounds. Fix
drawable in test app.

Change-Id: I245d5d6acc6ba9806743ab2bf9bf99aff3649c39
2014-04-10 11:21:15 -07:00
Alan Viverette
7f1ab7a43f Theming for more VectorDrawable attrs, add attrs to test app
BUG: 13878079
Change-Id: Ibcc8d67446c44cd8f681230fc484c7dc7411ffab
2014-04-08 17:12:43 -07:00
ztenghui
fba3bad387 Clean up on VectorDrawable.
Rename the test from DynamicDrawableTest to VectorDrawableTest.
Remove duplicate function calls in the test.
Fix comments in VectorDrawable

Change-Id: I1ef87137088ccc10b1abdb40ca368345d9dbadab
2014-04-02 17:31:08 -07:00
ztenghui
177dffd869 Getting the version information into the VectorDrawable
This will allow version controling for later API improvement.
We will only support version 1 so far.

Change-Id: I322e63f6cff157ebb6df5d80625c39bf96ff3659
2014-04-02 11:28:32 -07:00
Christopher Tate
f1977b4500 Expand install observer semantics
...and now fail conservatively when two apps both attempt to define
the same permission.  Apps signed with the same certificate are
permitted to redefine permissions.

We also finally have a (hidden) interface class for observing package
installation so that we can now rev the interface without breaking
existing callers.

Bug 13551375

Change-Id: Ifa4e59154dcccbb286ee46a35a6f25e4ad0f0f01
2014-03-27 12:37:47 -07:00
John Hoford
49224acd78 Merge "add Dynamic Drawable (vector graphics for Icons)" 2014-03-27 00:14:14 +00:00
John Hoford
abb7d134c0 add Dynamic Drawable (vector graphics for Icons)
Change-Id: Id44b7f6d1b8dd073b8ed35e2142a380550f2449b
2014-03-26 16:59:54 -07:00
Adam Lesinski
b0569b98d5 Use new build var to depend on an APKs resources
Some other projects use LOCAL_APK_LIBRARIES and don't yet
work with the new shared library changes.

Change-Id: Ibb54bc1b5e3eb1252cf5b4e45249b089d25854ac
2014-03-25 17:04:56 -07:00
Adam Lesinski
de898ff429 Shared library resource support
Shared libraries can now export resources for applications
to use.

Exporting resources works the same way the framework exports
resources, by defining the public symbols in res/values/public.xml.

Building a shared library requires aapt to be invoked with the
--shared-lib option. Shared libraries will be assigned a package
ID of 0x00 at build-time. At runtime, all loaded shared libraries
will be assigned a new package ID.

Currently, shared libraries should not import other shared libraries,
as those dependencies will not be loaded at runtime.

At runtime, reflection is used to update the package ID of resource
symbols in the shared library's R class file. The package name of
the R class file is assumed to be the same as the shared library's
package name declared in its manifest. This will be customizable in
a future commit.

See /tests/SharedLibrary/ for examples of a shared library and its
client.

Bug:12724178
Change-Id: I60c0cb8ab87849f8f8a1a13431562fe8603020a7
2014-03-25 12:09:56 -07:00
John Spurlock
2fcce9612d Fix broken tests to fix build
Change-Id: I6bb9d178a9f1b09c1b247ec9cbdd57507295c4bf
2014-03-19 18:42:31 -04:00
John Reck
f666ad7046 Rename DisplayList->RenderNode
Change-Id: Idcca6f26ba6282594789962f5edb3ed53a290fef
2014-03-17 10:30:32 -07:00
Steve Moyer
adb3a198be am 05d855de: am d93e7b24: Merge "Don\'t attempt to launch disabled activities in smoke test."
* commit '05d855defe8610854592ddd7baf5644ac6d4da15':
  Don't attempt to launch disabled activities in smoke test.
2014-03-16 17:31:18 +00:00
RoboErik
8ae0f34db9 Adds a TransportController and TransportPerformer to session
This makes transport controls a primitive interface on sessions with
a way to create the performer, register callbacks, and send commands
and updates between controllers and performers. This still needs some
cleanup but has been tested with OneMedia.

Change-Id: I373d35f7ccc383b8421bd14044457467d80425f3
2014-03-12 15:09:42 -07:00
Chris Craik
f481907990 Fix build, removing hidden attr
Change-Id: Ia820e76345ad6077025e887afdaa91e08eecd649
2014-03-07 14:15:57 -08:00
Christopher Tate
777b8a808e am 422b2656: resolved conflicts for merge of c45ff35f to klp-modular-dev
* commit '422b2656741520448815b230f7c73ad67a4c4e95':
  Adapt to underlying changes in the PBKDF2 implementation
2014-03-05 22:17:21 +00:00
Christopher Tate
422b265674 resolved conflicts for merge of c45ff35f to klp-modular-dev
Change-Id: Id1799e49891dc72e2e9c55fd9f418ceee94a7875
2014-03-05 12:28:04 -08:00
Christopher Tate
c45ff35f21 am 1efc6e52: am 1d13f13d: Merge "Adapt to underlying changes in the PBKDF2 implementation" into klp-dev
* commit '1efc6e52d65389463ad52c32df02d68493df0f48':
  Adapt to underlying changes in the PBKDF2 implementation
2014-03-05 00:57:22 +00:00
Christopher Tate
1d13f13dea Merge "Adapt to underlying changes in the PBKDF2 implementation" into klp-dev 2014-03-05 00:51:33 +00:00
Guang Zhu
ca3af0d7e8 am a70d20f6: am 818f83d9: am bf7b64bd: am be659185: use min app launch time in AppLaunch perf test
* commit 'a70d20f6037a5c3f6ee18244a3b547454beb8399':
  use min app launch time in AppLaunch perf test
2014-03-04 20:36:47 +00:00
Guang Zhu
a70d20f603 am 818f83d9: am bf7b64bd: am be659185: use min app launch time in AppLaunch perf test
* commit '818f83d965be3cc1af88a1c700115bff0dccf3a3':
  use min app launch time in AppLaunch perf test
2014-03-04 18:46:23 +00:00
Guang Zhu
818f83d965 am bf7b64bd: am be659185: use min app launch time in AppLaunch perf test
* commit 'bf7b64bd30bc1e7fabcfc7f46132f504b30ba97c':
  use min app launch time in AppLaunch perf test
2014-03-04 18:42:17 +00:00
Guang Zhu
be6591856b use min app launch time in AppLaunch perf test
Change-Id: Id3a5872ff29fba5daeff058f0842fd011e50a0a1
(cherry picked from commit 2861a89bed9066e206917c41357a5e589e8482cb)
2014-03-04 18:35:05 +00:00
Christopher Tate
28c8cfd762 Adapt to underlying changes in the PBKDF2 implementation
We need to specify "PBKDF2WithHmacSHA1And8bit" now in order to get precisely
the same output as was previously generated with "PBKDF2WithHmacSHA1".  We
also now try both when it's ambiguous which was used to generate the archive
checksums.

Bug 12494407

Cherry-pick from master.

Change-Id: I2d6081dd62f50f7d493045150b327ed120de7abd
2014-03-03 17:49:30 -08:00
Chris Craik
6dbca96f08 Improve isolatedZVolume test
Shows interleaving effect better

Change-Id: I85361b15587306484dc8fa6d6366e866014c270f
2014-03-03 11:43:43 -08:00
RoboErik
8fb4cf1ef4 Merge "Move Session apis to android.media.session" 2014-02-26 18:13:35 +00:00
RoboErik
2f5b057da7 Move Session apis to android.media.session
This is to make it easier to distinguish the new apis from the old
ones.

Change-Id: Ic5eaf65e8bd054a844f87b9118c4bb18f30ac8a7
2014-02-25 16:01:55 -08:00
John Spurlock
8a985d24ce Tabs -> spaces in frameworks/base.
Change-Id: I5a84e8e93ac99b5ed0212b37bf66efa5e53864be
2014-02-25 09:49:29 -05:00
Jeff Brown
10102e4c0e resolved conflicts for merge of baaa080b to master
Change-Id: I3ee12321e298f7a2ea577a99f30c49f3bb497fae
2014-02-20 18:05:03 -08:00
Steve Moyer
39d259b584 Don't attempt to launch disabled activities in smoke test.
Also remove the superfluous runner from manifest.

Change-Id: I194b260d443d9bd4a16f62893bb2f7bcfb7ed40e
2014-02-20 16:41:52 -08:00
Jeff Brown
90506a41c6 am 07e6d1b9: Merge "Add a new "doze mode" based on Dream components." into klp-modular-dev
* commit '07e6d1b9a5f81ff5a5bf91f2b260ee487d5f2b65':
  Add a new "doze mode" based on Dream components.
2014-02-20 21:47:08 +00:00
Jeff Brown
2687550272 Add a new "doze mode" based on Dream components.
When a doze component has been specified in a config.xml resource
overlay, the power manager will try to start a preconfigured dream
whenever it would have otherwise gone to sleep and turned the
screen off.  The dream should render whatever it intends to show
then call startDozing() to tell the power manager to put the display
into a low power "doze" state and allow the application processor
to be suspended.  The dream may wake up periodically using the
alarm manager or other features to update the contents of the display.

Added several new config.xml resources related to dreams and dozing.
In particular for dozing there are two new resources that pertain to
decoupling auto-suspend mode and interactive mode from the display
state.  This is a requirement to enable the application processor
and other components to be suspended while dozing.  Most devices
do not support these features today.

Consolidated the power manager's NAPPING and DREAMING states into one
to simplify the logic.  The NAPPING state was mostly superfluous
and simply indicated that the power manager should attempt to start
a new dream.  This state is now tracked in the mSandmanSummoned field.

Added a new DOZING state which is analoguous to DREAMING.  The normal
state transition is now: AWAKE -> DREAMING -> DOZING -> ASLEEP.
The PowerManager.goToSleep() method now enters the DOZING state instead
of immediately going to sleep.

While in the doze state, the screen remains on.  However, we actually
tell the rest of the system that the screen is off.  This is somewhat
unfortunate but much of the system makes inappropriate assumptions
about what it means for the screen to be on or off.  In particular,
screen on is usually taken to indicate an interactive state where
the user is present but that's not at all true for dozing (and is
only sometimes true while dreaming).  We will probably need to add
some more precise externally visible states at some point.

The DozeHardware interface encapsulates a generic microcontroller
interface to allow a doze dream for off-loading rendering or other
functions while dozing.  If the device possesses an MCU HAL for dozing
then it is exposed to the DreamService here.

Removed a number of catch blocks in DreamService that caught Throwable
and attempted to cause the dream to finish itself.  We actually just
want to let the process crash.  Cleanup will happen automatically if
needed.  Catching these exceptions results in mysterious undefined
behavior and broken dreams.

Bug: 12494706
Change-Id: Ie78336b37dde7250d1ce65b3d367879e3bfb2b8b
2014-02-20 13:39:13 -08:00
Guang Zhu
c4f6c351e1 Merge "use min app launch time in AppLaunch perf test" 2014-02-20 03:17:23 +00:00
Guang Zhu
2861a89bed use min app launch time in AppLaunch perf test
Change-Id: Id3a5872ff29fba5daeff058f0842fd011e50a0a1
2014-02-19 18:59:00 -08:00
RoboErik
bfa153b64b Initial commit for MediaSession test app
This app creates a service and UI in separate processes and uses
the new MediaSession APIs. This is still a rough work in progress.

Change-Id: I9692c95bf2fdbee7255da86dff59044c893e3a1f
2014-02-19 13:41:38 -08:00
John Reck
04fc583c3d Refactor HardwareLayer
Defer all the things!
 Groundwork to allow hardware layers to work in a renderthread world

Change-Id: Ib3aa47525f393083621254a743dbaa6352f933bd
2014-02-10 20:55:39 -08:00
John Spurlock
406b5f074e am cd4cf932: am 6691bfd6: am cccae25f: Merge "Example controller app for system ui demo mode."
* commit 'cd4cf932d994c392ca6da21dc32a26d6d467b721':
  Example controller app for system ui demo mode.
2014-02-10 12:51:06 +00:00
John Spurlock
c23929c3a3 Example controller app for system ui demo mode.
Demo mode is protected behind a system setting.  To enable:
$ adb shell settings put global sysui_demo_allowed 1

Change-Id: I2248e27a253bf9eac176e8be9153a2b147cefa40
2014-02-07 14:47:47 -05:00
Chris Craik
1df26446b7 Rework and clean up DisplayList projection
Move the projection surface to be a property of a DisplayList,
set to true for every background drawable.

Additionally, handle a projecting view background such that it doesn't
try to project onto itself (which is undesirable).

Change-Id: Ic70b17474bd87340e80767f8518f73b233419c7a
2014-02-06 16:07:37 -08:00
Christopher Tate
d417d625d2 Introduce "IdleService" API to expose idle-time maintenance to apps
When an application wishes to do low-priority background work when the
device is otherwise idle (e.g. in a desk dock overnight), it declares
a service in its manifest that requires this permission:

     android:permission="android.permission.BIND_IDLE_SERVICE

to launch, and which publishes this intent filter:

    <intent-filter>
        <action android:name="android.service.idle.IdleService" />
    </intent-filter>

This string is declared in the API as IdleService.SERVICE_INTERFACE.

The service must be implemented by extending the new "IdleService"
class, which provides the API through which the system will communicate
with the app.

IdleService declares three methods, two of which are lifecycle callbacks
to the service, and the third of which is for the service itself to
invoke when appropriate.  The lifecycle callbacks are

    public abstract boolean onIdleStart();
    public abstract void onIdleStop();

The first of these is a notification to the service that an idle
maintenance interval has begun.  The service can then spin off
whatever non-UI work it wishes.  When the interval is over, or if
the OS determines that idle services should be shut down immediately,
the onIdleStop() method will be invoked.  The service must shut down
any background processing immediately when this method is called.

Both of these methods must return immediately.  However, the OS
holds a wakelock on the application's behalf for the entire period
between the onIdleStart() and onIdleStop() callbacks.  This means
that for system-arbitrated idle-time operation, the application does
not need to do any of its own wakelock management, and does not need
to hold any wakelock permissions.

The third method in IdleService is

    public final void finishIdle();

Calling this method notifies the OS that the application has finished
whatever idle-time operation it needed to perform, and the OS is thus
free to release the wakelock and return to normal operation (or to
allow other apps to run their own idle services).

Currently the idle window granted to each idle service is ten minutes.
The OS is rather conservative about when these services are run; low
battery or any user activity will suppress them, and the OS will not
choose to run them particularly often.

Idle services are granted their execution windows in round-robin
fashion.

Bug 9680213

Change-Id: Idd6f35940c938c31b94aa4269a67870abf7125b6
2014-01-31 15:41:40 -08:00
Chris Craik
de439dbe2c Merge "Update reordering method names, and make 3d reordering API public" 2014-01-29 22:51:29 +00:00
Chris Craik
6657a6c539 Update reordering method names, and make 3d reordering API public
IsContainedVolume -> hasIsolatedZVolume conveys that this affects Z
ordering of views

ProjectToContainedBackground -> ProjectBackwards, since it ended up
using its own projection target, separate from the 3d volume bit

Change-Id: Ia2cde838cc4da134366fe6ff623290fbd65e50c3
2014-01-29 13:55:39 -08:00
Christopher Tate
5e31fdbacd Merge "Adapt to underlying changes in the PBKDF2 implementation" 2014-01-29 21:42:58 +00:00
Andy Hung
bdf8db0828 Merge "Add "throws IOException" to MediaCodec factory methods" 2014-01-21 23:03:33 +00:00
Christopher Tate
684d6f9f4d Adapt to underlying changes in the PBKDF2 implementation
We need to specify "PBKDF2WithHmacSHA1And8bit" now in order to get precisely
the same output as was previously generated with "PBKDF2WithHmacSHA1".  We
also now try both when it's ambiguous which was used to generate the archive
checksums.

Bug 12494407

Change-Id: I5443f31a5e13c24f44445768b6e9a6eea221ede6
2014-01-16 14:25:43 -08:00