• Home
  • History
  • Annotate
  • only in /frameworks/base/core/java/android/service/
History log of /frameworks/base/core/java/android/service/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c5b828df68460fac58964222d0c4b805e63e4081 08-Jun-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed typo on TextValueSanitizer sample." into pi-dev
f61ba5cabf031181154d82c46715ef4fad2d3557 21-May-2018 Felipe Leme <felipeal@google.com> Merged many autofill session metrics into AUTOFILL_REQUEST:

- AUTOFILL_UI_LATENCY
- AUTOFILL_AUTHENTICATED;
- AUTOFILL_DATASET_AUTHENTICATED
- AUTOFILL_INVALID_AUTHENTICATION
- AUTOFILL_INVALID_DATASET_AUTHENTICATION

At least one AUTOFILL_REQUEST is created on each session; additional ones are
created for each additional request made to the service (which is tracked by
FIELD_AUTOFILL_REQUEST_INDEX).

Also:
- Added TYPE_CLOSE to indicate a timeout waiting for the service response.
- Added FIELD_AUTOFILL_REQUEST_ORDINAL to indicate the order of the request in
the session.
- Added FIELD_AUTOFILL_NUMBER_REQUESTS on AUTOFILL_SESSION_FINISHED.
- Created an AUTOFILL_FIELD_FLAGS to avoid conflict with FIELD_FLAGS.

Test: atest CtsAutoFillServiceTestCases # to make sure it didn't break anything
Test: manually run some test and watched the result of
'adb shell logcat -b events | grep sysui', as described below.

1) LoginActivityTest#testAutoFillNoDatasets:

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,-1,1454,1]
[757,919,758,4,806,android.autofillservice.cts,908,android.autofillservice.cts,1455,1]

Where 907=AUTOFILL_REQUEST, 919=AUTOFILL_SESSION_FINISHED,
1454=FIELD_AUTOFILL_REQUEST_ORDINAL, 1455=FIELD_AUTOFILL_NUMBER_REQUESTS,
758:10 = TYPE_SUCCESS, 909 = FIELD_AUTOFILL_NUM_DATASETS (-1 == null response)

2) LoginActivityTest#testAutoFillTwoDatasetsSameNumberOfFields:

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,2,1145,60,1454,1]

Where 1145=FIELD_AUTOFILL_DURATION (60ms UI latency)

3) LoginActivityTest#testCancellationSignalCalledAfterTimeout:

[757,907,758,2,806,android.autofillservice.cts,908,android.autofillservice.cts,1454,1]

Where 758:2 = TYPE_CLOSE (timeout)

4) LoginActivityTest#testAutofillManuallyOneDataset:

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,1,1145,67,1452,1,1454,1]

Where 1452=FIELD_AUTOFILL_FLAGS and 1=FLAG_MANUAL_REQUEST

5) FillEventHistoryTest#testNoEvents_whenServiceReturnsFailure:

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,1,1145,48,1454,1]
[757,907,758,11,806,android.autofillservice.cts,908,android.autofillservice.cts,1454,2]
[757,919,758,4,806,android.autofillservice.cts,908,android.autofillservice.cts,1455,2]

Where 758:11 = TYPE_FAILURE

6) AuthenticationTest#testFillResponseAuthJustOneField

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,0,1145,91,1453,912,1454,1]

Where 1453:912 is FIELD_AUTOFILL_AUTHENTICATION_STATUS = AUTOFILL_AUTHENTICATED

7) AuthenticationTest#testDatasetAuthTwoDatasets

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,2,1145,64,1453,1126,1454,1]

Where 1453:1126 is FIELD_AUTOFILL_AUTHENTICATION_STATUS =
AUTOFILL_DATASET_AUTHENTICATED

8) AuthenticationTest#testFillResponseAuthServiceHasNoData
[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,0,1145,49,1453,1128,1454,1]

Where 1453:1128 is FIELD_AUTOFILL_AUTHENTICATION_STATUS =
AUTOFILL_INVALID_AUTHENTICATION

9) VirtualContainerActivityCompatModeTest#testAutofillSync

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,1,1145,53,1414,1,1454,1]
[757,919,758,4,806,android.autofillservice.cts,908,android.autofillservice.cts,1414,1,1455,1]

Where 1414 is FIELD_AUTOFILL_COMPAT_MODE

10) FieldsClassificationTest#testHit_manyUserData_manyDetectableFields

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,0,1271,2,1454,1]
Where 1271 is FIELD_AUTOFILL_NUM_FIELD_CLASSIFICATION_IDS

11)PartitionedActivityTest#testAutofill4PartitionsMixManualAndAuto

[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,1,1145,109,1454,1]
[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,1,1452,1,1454,2]
[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,1,1454,3]
[757,907,758,10,806,android.autofillservice.cts,908,android.autofillservice.cts,909,1,1452,1,1454,4]
[757,919,758,4,806,android.autofillservice.cts,908,android.autofillservice.cts,1455,4]

Bug: 80093094
Fixes: 80095814

Merged-In: I87424834fc925a3bcba410eec5aa32fcd6253367
Change-Id: I87424834fc925a3bcba410eec5aa32fcd6253367
utofill/FillCallback.java
utofill/IFillCallback.aidl
7af8fe3e295f40b6c4e9d247fcfa5069735af1c9 08-May-2018 Rohan Shah <shahrk@google.com> Merge "Add knobs for tweaking blocking helper thresholds" into pi-dev
0350dab5b690652f78024a211c993f32fb766876 04-May-2018 Rohan Shah <shahrk@google.com> Add knobs for tweaking blocking helper thresholds

Added both blocking helper parameters to Global Settings to allow for
tweaking stats/values. Added listeners for value updates (so that
channels are updated properly with new thresholds).

Bug: 77143005
Test: manually, test cases
Change-Id: Ia5cfb29ca40500a694261bd5e9e60fa1f34e742a
otification/NotificationAssistantService.java
4b7853ec5f749453359992daf2488a18b948f858 04-May-2018 Beverly <beverlyt@google.com> Check if alarm and now times are in schedule

Bug: 77570224
Bug: 79230399
Test: ScheduleCalendarTest
Change-Id: I8452e799189dab0559b49f1e62b18b7106929cd3
otification/ScheduleCalendar.java
10a7cc127531c1917eab11fb953b2dcc84b7ec95 03-May-2018 Julia Reynolds <juliacr@google.com> Update dnd defaults for new users

Test: flash new device
Change-Id: I83ecf3394724a1efd952c01514272924cd289e34
Fixes: 78778706
otification/ZenModeConfig.java
1f580571182b298bf10322e1ef5f7c801404ae72 27-Apr-2018 Julia Reynolds <juliacr@google.com> Change zen defaults for upgrade and new users

- Upgrade -> migrate suppressScreenOn and suppressScreenOff to
suppressVisualEffects
- New -> all visual effects are off, starred contacts are allowed
to call

Also fixed an NPE noticed while testing this CL

Test: runtest systemui-notification
Change-Id: I1efd6e3f9bc7519b2fb769bae62ffa1aaae59cb6
Fixes: 78778706
Fixes: 78768955
otification/ZenModeConfig.java
f60fb12d39774e2f626660d357a4384cdaf0e72c 26-Apr-2018 Felipe Leme <felipeal@google.com> Fixed typo on TextValueSanitizer sample.

Test: is an overkill here
Fixes: 78641592

Change-Id: I968d55830dfe9551eb4d1e1c8cd79651d674f8eb
utofill/TextValueSanitizer.java
36b86c28f88e4c7853a4255a0fd9b754cbb547c4 16-Apr-2018 Dake Gu <dake@google.com> Autofill: new UX for TV and support themes

1. Define default Themes for autofill window and save dialog.
(http://go/theme_autofill). Phone uses light themes, TV uses
dark themes.
2. Apply autofill theme to RemoteViews passed from autofill service.
So this can make sure the textColor of RemoteViews matches
the background of autofill theme uses.
Updated public javadoc that autofill service should not
hardcode color values.
3. A new TV ux that occupies half screen height (go/autofill-for-tv).
TV autofill now passes unhandled physical keyevent to app window
in the same way phone/tablet does.
4. Fixed ATV autofill window to be SYSTEM_DIALOG, so it wont be
clipped by app activity window (DialogLauncherActivityTest).

Bug: 71720680
Bug: 74072921
Test: CtsAutofillTest

Change-Id: Ib570227b0958b1800e8f0600b8aec36478568d74
utofill/BatchUpdates.java
utofill/Dataset.java
utofill/FillResponse.java
94a38b35e907fc560d4beec3bfb78360411609a3 20-Apr-2018 Julia Reynolds <juliacr@google.com> GetActiveNotifications should never return null

Test: runtest systemui-notification
Change-Id: I53e7a4a2a9f05318dd97ffb096658a4f8bcebc8a
Fixes: 70396956
otification/NotificationListenerService.java
9c05605f52cf6d84241da553d90887ca1bad87dc 19-Apr-2018 Felipe Leme <felipeal@google.com> Document compatibility mode limitations.

Test: mmm -j108 frameworks/base/:doc-comment-check-docs

Fixes: 77655074

Change-Id: I527d882850442c7e6e9379b1b423673885e07f2b
utofill/AutofillService.java
a7f3e9c7cb35ad252cdb417aa604e0b2358e83e4 19-Apr-2018 Felipe Leme <felipeal@google.com> Revert "Always set FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE on SaveInfo when on compat mode."

Save has many limitations on compat mode, so we better not change the SaveInfo
behavior but rather document then.

This reverts commit 4f74a018c8ee9801f1d5ce2c7ec726251efc4fbf.

Test: atest CtsAutoFillServiceTestCases:VirtualContainerActivityTest \
CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest

Bug: 77655074

Change-Id: I36bd28ca546dcedefe75de7815b76b8b5827aee3
utofill/AutofillService.java
86d076f9d3ef7da272cb840ae9ad8bf78e435525 17-Apr-2018 Beverly <beverlyt@google.com> Don't mute ringer if apps can bypass dnd

Test: atest RankingHelperTest
Change-Id: I587e5b8d4f6cfe3b384c5b4b9e72de12b6639b6f
Fixes: 77729075
otification/ZenModeConfig.java
b9826dd191f118d19afbb531adeb038e40fa55ae 12-Apr-2018 Beverly <beverlyt@google.com> Don't show ringer status if dnd overrides it

If DND is overriding the ringer then:
- Don't show silent/vibrate ringer in status bar
- Don't show silent/vibrate ringer status in QS

Change-Id: I0c921905c6b06e1379b497dd1ac9e3fce483d5fd
Fixes:77651394
Test: manual
otification/ZenModeConfig.java
b2943a864ed4f9ff637d51e5c7483b84dc30bb5f 11-Apr-2018 Julia Reynolds <juliacr@google.com> Merge "Show onboarding screen from dnd tile" into pi-dev
9553a11557528a91d5a51134e9a20c26f5ef69cf 11-Apr-2018 Chavi Weingarten <chaviw@google.com> Merge "Synchronize stack position and size update for split screen" into pi-dev
c4e5ecf703e4648eef9e5cb3065f85d744d8dcb5 11-Apr-2018 Julia Reynolds <juliacr@google.com> Show onboarding screen from dnd tile

Increase the DND version and reset the setting so those who
are upgrading P->P see the new flow.

Test: manual
Change-Id: I9286f022d1fa6520305ff03dbce54c4eec0e371a
Fixes: 77658931
otification/ZenModeConfig.java
be43ac86865c8013bef120f1f327c2cfe98ebfe8 05-Apr-2018 chaviw <chaviw@google.com> Synchronize stack position and size update for split screen

When entering split screen, the secondary window changes position so
it's below the primary split screen when minimized. The WSA at the same
time is also changing size to fit the area. However, the size doesn't
change until the client requests a new size and a frame with the correct
size comes in. This causes the stack to update position before the
resize which causes content to get cut off and then a jump when the resize
completes.

This change updates the WSA position as soon as it recognizes that the
stack changed position due to entering split screen secondary. The WSA
sets its position as the negative of the stack position, making the
calculated window position at (0,0). When a relayout is requested, the
WSA's position is requested back to (0,0), deferring until the new frame.
This will put the WSA position at (0,0) when a frame with the correct size
is drawn. This places the window position at the stack's new position in
the same transaction that a WSA frame with the new size is drawn.

Change-Id: I8c88d7784f827d66926fb5c382af2346028dc48f
Fixes: 74354855
Test: Entering split screen with quick step is smooth
Test: Entering split screen with old launcher still works
allpaper/WallpaperService.java
8ecf40491be046f0cbd534c9b9fbc5d270f24b02 09-Apr-2018 Beverly Tai <beverlyt@google.com> Merge "Update dnd settings summary" into pi-dev
ebcaeeb792688f1a35075d450e78212b46d03544 06-Apr-2018 Beverly <beverlyt@google.com> Update dnd settings summary

- Add null check for ZenModeConfig
- Add ability to include description for indefinite dnd

Test: manual, DndConditionTest, ZenModeSettingsTest
Bug: 76208187
Bug: 77704156
Change-Id: I88de555d2681e613dbcd7694087efef2504b4d51
otification/ZenModeConfig.java
9acd673c0deb2652a55c52b9b80515d84b1945dc 24-Mar-2018 Selim Cinek <cinek@google.com> Migrated the Person class to its own file

Because we are expecting usage of Person across
other surfaces, we migrate the class out
of he Notification class which is already incredibly
huge.

Test: Migrated existing cts test
Change-Id: Ia487ae7965b5ca2b016245d21faa63e3b4628344
Fixes: 75980526
otification/NotificationListenerService.java
37317e166867a569dae7e5cbd8de8439eae57439 05-Apr-2018 Jan Althaus <jalt@google.com> Merge "Makes TCS methods non-abstract" into pi-dev
39ccc7e388bb6e5e6972497258750c06d0a4e959 04-Apr-2018 Jan Althaus <jalt@google.com> Makes TCS methods non-abstract

This only affects System API

Bug: 77563695
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit CtsViewTestCases:android.view.textclassifier.cts.TextClassificationManagerTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextSelectionTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextLinksTestBug:
Change-Id: Ie927ffe3a4678b7a622c139a5431b89e8f22c6e4
extclassifier/TextClassifierService.java
ae82e7ad280e55dca22014c6abc857372229f89c 04-Apr-2018 Abodunrinwa Toki <toki@google.com> Fix TCS crash due to API changes.

- Brings by old deleted APIs and hides them
- Except parceling and hidden APIs that won't have been called anyway
- Option holds a reference to the Request object so we don't have to
rebuild it

Bug: 77523413
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit CtsViewTestCases:android.view.textclassifier.cts.TextClassificationManagerTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextSelectionTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextLinksTest
Change-Id: I4277c48a950c3334439649373885ed7fe54f898e
extclassifier/TextClassifierService.java
bf9dfb16be7d58b473cff96a3ab9ac3b2ff33b43 02-Apr-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "TextClassifier API updates." into pi-dev
080c8542b68cf17a0441862c404cb49ce0e86cfe 27-Mar-2018 Abodunrinwa Toki <toki@google.com> TextClassifier API updates.

1. Wraps TC queries in Request objects
2. Adds create/destroyTextClassificationSession system APIs
3. Adds the session Ids to system API calls
4. Change setSignature() to setId() on result objects
5. Plumbing to make the API updates work as things currently work
6. Hide Linkify.addLinksAsync APIs

Bug: 74461129

Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit CtsViewTestCases:android.view.textclassifier.cts.TextClassificationManagerTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextSelectionTest
Test: bit FrameworksCoreTests:android.view.textclassifier.TextLinksTest

Change-Id: I933ada8b37ef9893331a265e3b4fc08e043f1029
extclassifier/ITextClassifierService.aidl
extclassifier/TextClassifierService.java
df3788dcd8c9ca0858c884b6f8f1166eeb9761f5 30-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Don't exit dnd rule for old alarms" into pi-dev
46e83ebf27a73fb6d3eb520ae605ae374dc840d5 30-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Minor javadoc fixes." into pi-dev
369dd4257ca7928ca525ff1e1391fe985bee113b 30-Mar-2018 Beverly <beverlyt@google.com> Don't exit dnd rule for old alarms

Bug: 77209521
Test: atest ScheduleCalendarTest
Change-Id: I394a6a74872f76f90b75238593197bb6c50531ef
otification/ScheduleCalendar.java
74896e21a7782ca63d09c570d42999d6cc8859ab 29-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed annotation typo." into pi-dev
8ce43a5e701de4ddb2f1e281b946d5ea96711d06 29-Mar-2018 Felipe Leme <felipeal@google.com> Minor javadoc fixes.

Test: echo 'In TH we trust!'
Bug: 74830976

Change-Id: Ib88fc0b0275e87ea31d22759507b4c29c7849c05
utofill/AutofillFieldClassificationService.java
7cdba9fcf0089075d6f932fee50d647a440621ba 29-Mar-2018 Felipe Leme <felipeal@google.com> Fixed annotation typo.

Bug: 73648631
Test: not really

Change-Id: I4a10642f05e28e5e324ca5b40e50a29138f49b8b
utofill/FillEventHistory.java
20d30e522654d26a30b2afc3a03410e9bc0219ce 28-Mar-2018 Felipe Leme <felipeal@google.com> Improved documentation of AutofillFieldClassificationService.onGetScores()

Test: echo 'In TH we trust!'

Fixes: 74830976

Change-Id: Ia1c002fa3b340810789b9cca9d7c4b71ea083230
utofill/AutofillFieldClassificationService.java
ec150609e486a4a99e83012553520f4f34e18fc1 23-Mar-2018 Felipe Leme <felipeal@google.com> Fixed AutofillServiceHelper.assertValid() so it throws the right exception.

Test: atest FillResponseTest SaveInfoTest
Bug: 76097200

Change-Id: Id643007e2d038cc6948cdb8d66c5454048d5f632
utofill/AutofillServiceHelper.java
63df4e248accfb3e74214fe5dda803b524e3134b 23-Mar-2018 Felipe Leme <felipeal@google.com> Merge "Improved autofill logging and dumping." into pi-dev
0cdac33f8f0d8d7d53cb4d286a99b4ed8008e3e9 23-Mar-2018 Felipe Leme <felipeal@google.com> Merge "Always set FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE on SaveInfo when on compat mode." into pi-dev
da9ea34c029df809e6b833a483408662e13ca9a1 22-Mar-2018 Felipe Leme <felipeal@google.com> Improved autofill logging and dumping.

Bug: 76027553
Test: adb shell dumpsys autofill

Change-Id: I19ef88c71334c62292ed982e43d7a7e89b35f10e
utofill/Dataset.java
utofill/FillResponse.java
utofill/SaveInfo.java
3a31f6c5ccd9c8e490ecb475262059e7f52717b3 22-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed urlBarResourceId." into pi-dev
4f74a018c8ee9801f1d5ce2c7ec726251efc4fbf 21-Mar-2018 Felipe Leme <felipeal@google.com> Always set FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE on SaveInfo when on compat mode.

Test: atest CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest

Bug: 76027553

Change-Id: I432b4321801ca90a55a24e5e896578d5b2d63014
utofill/AutofillService.java
88b745cce3555c3c29acec29aa71240f3b71b22c 22-Mar-2018 Felipe Leme <felipeal@google.com> Removed urlBarResourceId.

It will be removed before the final P build.

Test: atest FrameworksServicesTests:AutofillManagerServiceTest CtsAutoFillServiceTestCases
Fixes: 74445943

Change-Id: I9bc243a3c1ae78f2c385dbb907d362d8ab16b34c
utofill/AutofillServiceInfo.java
de6dfd93e5531e8111043c3b21af0d66b32f175f 22-Mar-2018 Felipe Leme <felipeal@google.com> Merge "Don't allow null ids on FillResponse.Builder.setAuthentication()" into pi-dev
df0b0d380d09a6a1e2d2faf5399d7874fc3a4b0d 22-Mar-2018 Felipe Leme <felipeal@google.com> Fixed autofill service metadata name on javadoc sample.

Bug: 72811034
Test: nope

Change-Id: I0367fa6ad1fa21c51dadb9706830bc50c3139cab
utofill/AutofillService.java
25960891466a5291c4e71309a07cb9f53fea9c16 21-Mar-2018 Felipe Leme <felipeal@google.com> Don't allow null ids on FillResponse.Builder.setAuthentication()

It would crash the system when save is invoked.

The issue was reproduced by passing a null id on
AuthenticationTest#testFillResponseAuthServiceHasNoDataButCanSave , but that
change was not committed because with the fix the builder would throw an
exception.

Test: atest CtsAutoFillServiceTestCases:FillResponseTest

Fixes: 76097200

Change-Id: Ifa8105ee1451ba7107082a94a538a8f84f50df18
utofill/AutofillServiceHelper.java
utofill/FillResponse.java
utofill/SaveInfo.java
6c0f42b3b53418cbe292263c40f6a724d932968f 21-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Ability to hide/unhide suspended app notifications" into pi-dev
764f123b97b77bc818d1500eb6167b3e1bc3997b 21-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Check if the given user is unlocked when unlock by token" into pi-dev
5a20a5ed2f67f8bc829a50a5ce03e56a50323831 06-Mar-2018 Beverly <beverlyt@google.com> Ability to hide/unhide suspended app notifications

Test: NotificationListenerVerifierActivity.java
Test: atest NotificationDataTest NotificationListenerServiceTest NotificationManagerServiceTest
Bug: 73965645
Change-Id: I49a02e9fd84dfaa1891437a5d8fc52109a43cded
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
bab773d23ff8dedcf5a258362c4c603da63dafe5 19-Mar-2018 Hongwei Wang <hwwang@google.com> Check if the given user is unlocked when unlock by token

Bug: 76010226
Test: None

Change-Id: I2ceea0f185c5e54a9c2a529a9cf8db78587c4072
rust/TrustAgentService.java
8cf1ae492877182fe37aca4237f67fb0634047fb 20-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Auto zen rules reset for some upgrading users" into pi-dev
4e2f76c3efce2af7ac0ef6ef61e3b33af8a2f7a0 16-Mar-2018 Beverly <beverlyt@google.com> Auto zen rules reset for some upgrading users

Automatic zen rules will be set to the undeletable,
default rules for for fresh P devices and for upgrading users
who didn't have any zen automatic rules enabled on upgrade

Bug: 74381638
Test: atest ZenModeHelperTest
Change-Id: Icfa7dfe6c99cb9d67821df0034d5e9a3457b2ef4
otification/ZenModeConfig.java
4cd1ae0cb14c53d4a5c374a00a9a5208e8fd98cb 15-Mar-2018 Felipe Leme <felipeal@google.com> Cosmetic changes on Field Classification TODOs and docs.

Test: in TreeHugger we trust!
Bug: 73648631

Change-Id: I9390fb570e18e9636da2de27e2bc6186d5958e41
utofill/AutofillService.java
utofill/UserData.java
197ea9e3a5f1472e2b7211fa0ddb7fb330f210d6 12-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "TextClassifierService.onSelectionEvent" into pi-dev
ad52f4b97c897689d0b4dbfe344229a9970136eb 07-Feb-2018 Abodunrinwa Toki <toki@google.com> TextClassifierService.onSelectionEvent

Bug: 74466564
Bug: 67609167
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: bit FrameworksCoreTests:android.view.textclassifier.logging.SelectionEventTest
Merged-In: Ib5af1ec80a38432d1201fbc913acdc3597d6ba82
Change-Id: Ib5af1ec80a38432d1201fbc913acdc3597d6ba82
extclassifier/ITextClassifierService.aidl
extclassifier/TextClassifierService.java
9e56800b6e4648ea4df594b6a2ef3da1f2e16595 12-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Moved urlBarResourceId from autofill service manifest to whitelist settings." into pi-dev
e6d974a56789d0c8e4a2e395f2eb95200145f9b2 06-Mar-2018 Abodunrinwa Toki <toki@google.com> Allow TextClassifierServices to get a hold of a local TextClassifer.

Test: builds
Bug: 74466564
Bug: 72747726
Merged-In: Idb108f2b3d95393a051f9f19b0c04fc4e3ed2b33
Change-Id: Idb108f2b3d95393a051f9f19b0c04fc4e3ed2b33
extclassifier/TextClassifierService.java
1c7eb0c8eb156c4656f2d3e1b97929797e4e7ec9 09-Mar-2018 Felipe Leme <felipeal@google.com> Moved urlBarResourceId from autofill service manifest to whitelist settings.

The manifest attribute is still public as it might have been used by autofill
services deployed against P DP1; it will be removed after the next developer
previs is branched out. We also need to assumie a default value for the buttons
if not specified by settings, but that will be done in a separate change so it
can be easily reverted.

Also implemented support for multiple buttons, and added unit tests.

Test: atest CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest \
CtsAutoFillServiceTestCases:VirtualContainerActivityTest \
FrameworksServicesTests:AutofillManagerServiceTest

Bug: 74445943
Bug: 72811561
Fixes: 73786629

Change-Id: I066ecf40fde2c5318dd8633a659fca8b7af8aecd
utofill/AutofillServiceInfo.java
ccc6ae64ff1dd957fabb24b3c889a69d2d42765d 01-Mar-2018 Julia Reynolds <juliacr@google.com> Expand the visual effects that DND can suppress.

Additionally default to disabling all visual effects when DND is on,
to gather dogfood feedback.

The 'dnd has changed' notification will be reposted after this
CL and has updated text.

Test: runtest systemui-notification
Bug: 74075050
Change-Id: I5bec8ccc6456d98112907b0264ecd52734983984
otification/NotificationListenerService.java
otification/ZenModeConfig.java
b8d853732c71bda480956f7e7001bda5c0bb14af 07-Mar-2018 Adrian Roos <roosa@google.com> Merge "Window: Provide frame size hint to ViewRootImpl" into pi-dev
5a169cf2f6495cfd408ae607701f06cb497f6df3 07-Mar-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "System sounds get its own dnd toggle" into pi-dev
9e370f2912620a4f3239cb58d2bce23a58f78cd6 06-Mar-2018 Adrian Roos <roosa@google.com> Window: Provide frame size hint to ViewRootImpl

Provides a better estimate to the ViewRootImpl about the likely
window frame size than it can get from the configuration, which
allows it to avoid unneccessary measure passes.

Bug: 73813813
Test: atest PhoneWindowManagerLayoutTest
Change-Id: Ia4de6509416d90eed61929ce1646904c31afdd8d
allpaper/WallpaperService.java
435c213e9d3f34541cd11ac076b4134291158a98 06-Mar-2018 Holly Jiuyu Sun <jiuyu@google.com> Remove toString() for CarrierIdentifier.

We may get NPE if mCarrierIdentifier is null. + should convert it to
string by itself.

Test: test on phone
Merged-In: Ibd352d6d2a9b0cb33a494d108eb0d3a7c1dbc61b
Change-Id: Ibd352d6d2a9b0cb33a494d108eb0d3a7c1dbc61b
uicc/EuiccProfileInfo.java
d696476fb31a203db38c7c31c347b27c8fda84ef 16-Feb-2018 Beverly <beverlyt@google.com> System sounds get its own dnd toggle

- Added logic for streams to be muted by dnd (unassociated with ringer)

Test: runtest -x frameworks/base/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
Bug: 73362490
Change-Id: I1101e67282f7331497e91eb510d2bf4f1ea6b4b1
otification/ZenModeConfig.java
964f01b32843a6eada3d9bb5af45b6c5dc2544d5 28-Feb-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed issues with legacy usages of notification people"
604843bda67a5c576eab5ecfacfc2b8d3b89ba71 27-Feb-2018 Benjamin Miller <benjaminmiller@google.com> Docs: added a note about about notification listeners and work profiles.

Stated that NotificationListenerService is ignored when running in the work profile.
A NotificationListenerService might not see notifications from the work profile if an IT admin blocks personal apps.
Staged at:
http://go/dac-stage/reference/android/service/notification/NotificationListenerService.html

Test: Run make ds-docs and review
Bug: 67907973
Change-Id: Ie37cf8f576dc228e6c8ba074f389595fdebcdf9c
otification/NotificationListenerService.java
5390e7d7ac0ccba9b8e6b9abf30a95c83e2382d3 21-Feb-2018 Selim Cinek <cinek@google.com> Fixed issues with legacy usages of notification people

Change-Id: Iac0caf2c97532913a7072a18af91791d2888bfd8
Fixes: 72110655
Test: runtest -x tests/app/src/android/app/cts/NotificationTest.java
otification/NotificationListenerService.java
5fb1070b1f38a4eacc0078e5396e6ec017ad6b96 15-Nov-2017 Erik Wolsheimer <ewol@google.com> Guard against updateDoze after detach

Bug: 68815183
Change-Id: I147f04af4ea1af59f95757a14de3c34021e048a5
reams/DreamService.java
e2e3b77aad14cda12894593b91069381bc2d1667 21-Feb-2018 Eugene Susla <eugenesusla@google.com> Merge "Use PooledLambda in autofill code"
9f1921f9ffc20544f22e76dd412523b53cb68a14 12-Feb-2018 Eugene Susla <eugenesusla@google.com> Use PooledLambda in autofill code

This replaces the usage of handler message types with PooledLambda

Bug: 73648631
Test: atest CtsAutoFillTestCases
Change-Id: I3be0870116489c0c831353fe4ab9abed3cac3a93
utofill/AutofillFieldClassificationService.java
utofill/AutofillService.java
700feef8a60e06784d28d1db9502e650df854cad 15-Feb-2018 Makoto Onuki <omakoto@google.com> Shortcut permissions for default text classifier

- Add two shortcut related permissions as SystemAPI for the default
text classifier.

- The default text classifier package name still comes from the
system resource.

Bug: 73083596
Bug: 71555985
Test: atest CtsPermission2TestCases
Test: Manual test with a test package, with the following in config.xml
<string name="config_defaultTextClassifierPackage" translatable="false">com.example.android.pm.shortcutlauncherdemo</string>

Change-Id: I19081d9d6ba0b33eb25d19aa55b4fe2f26a75897
extclassifier/TextClassifierService.java
e9aa338817ed0a7ab1668e4d4fe176311b6476b9 15-Feb-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Autofill Field Classification improvements."
d1da52edb963f15184c1ce20bae6ab77e76fed12 15-Feb-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Uses ICU DateFormat on new Autofill APIs."
febb733c1b170ccba0668e50beef1e230dc51eda 13-Feb-2018 Felipe Leme <felipeal@google.com> Autofill Field Classification improvements.

* Changed the remoteId -> userValue API to userValue -> categoryId so the
category could map to multiple values (for example,
"email" -> "email1", "email2")
* Added method and settings for maximum number of category ids.
* Tuned the default value of some settings.

Bug: 70407264

Test: atest CtsAutoFillServiceTestCases:UserDataTest \
CtsAutoFillServiceTestCases:FieldsClassificationTest \
SettingsBackupTest

Change-Id: I27f348c500077937c0f4bf65db6a899fa3c41cf6
utofill/FieldClassification.java
utofill/UserData.java
a6ebff0f0ba66274b333a157c3f15d7c38527fe5 14-Feb-2018 Svetoslav Ganov <svetoslavganov@google.com> Don't hold the autofill lock when looking up fill compat packages

Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases

Bug:73072565

Change-Id: I773e1e2f4ceedbe45c9389a065dc7f6fb0ab65b1
utofill/AutofillServiceInfo.java
27206d7940540b3eb961700ff07702ca14704742 15-Feb-2018 Felipe Leme <felipeal@google.com> Uses ICU DateFormat on new Autofill APIs.

Test: atest CtsAutoFillServiceTestCases:DateTransformationTest \
CtsAutoFillServiceTestCases:DateValueSanitizerTest
Fixes: 73392044
Fixes: 73392214

Change-Id: I26d20691d8fd68c4c2837f27cc0eee939bb9bf0b
utofill/DateTransformation.java
utofill/DateValueSanitizer.java
4963ce8efc7152b05ecd06423056466da1502729 14-Feb-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add support for url_bar sanitization on autofill compat mode."
185de72695f4e442febf4f83f79e9a7bba1a1980 14-Feb-2018 Felipe Leme <felipeal@google.com> Add support for url_bar sanitization on autofill compat mode.

Browsers typically use a standard class (like EditView) to hold the URL of the
page being loaded, and the content of that view is sanitized in the initial
autofill request. So, when running in compat mode, we need a mechanism to let
services tell which view contains the URL, so we can convert its contents to
a sanitized webScheme + webDomain pair or properties.

Test: manual verification
Fixes: 72994424

Change-Id: I8be5f3533d6c31f81f28036dc51d5de10a528079
utofill/AutofillServiceInfo.java
utofill/FillContext.java
3bae4e5d86e310cddcfe74d234a1b721058007e0 07-Feb-2018 Beverly <beverlyt@google.com> Zen upgrade notification

Test: runtest --path /extra/master/frameworks/base/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
Change-Id: Ia31f89af74d9bcee40e050bd6cc13f1e6a9a15d9
Fixes: 73000503
Fixes: 72876890
Fixes: 73110052
otification/ZenModeConfig.java
ceb94979e32b20496c64f6f454b4f1dbe1856341 12-Feb-2018 Qingxi Li <qingxi@google.com> Merge "Public EuiccManager APIs."
40279e54075e0f104ff484d094148f63b59e19cd 09-Feb-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes I6993325b,Icb5114fe

* changes:
Frameworks: Annotate trivial @GuardedBy in services/core
Frameworks: Annotate trivial @GuardedBy in core/java
4f73b9c09ac6ae73c22ad02872e362c817ab2d4c 13-Dec-2017 Holly Jiuyu Sun <jiuyu@google.com> Public EuiccManager APIs.

Public EuiccManager and other related necessary files.
Mark EuiccCardManager and other related necessary files as @SystemApi.
Solve lint errors and warnings.

Bug: 35851809
Test: test on phone
Change-Id: I68853e134e1e31fa9b91a83af6c491a2a8cca971
uicc/EuiccProfileInfo.java
uicc/EuiccService.java
uicc/GetDefaultDownloadableSubscriptionListResult.java
uicc/GetDownloadableSubscriptionMetadataResult.java
uicc/GetEuiccProfileInfoListResult.java
d3bb4aed78b75365fc0d18fc31750d86404a1f47 08-Feb-2018 Jiuyu Sun <jiuyu@google.com> Revert "Public EuiccManager APIs."

This reverts commit af6a5fffdc5ef30065f8bc2d1280bbd87eae3c64.

Reason for revert: <INSERT REASONING HERE>

Change-Id: Id3296a91e5c3ad624a6a03f6532b859524a518bf
uicc/EuiccProfileInfo.java
uicc/EuiccService.java
uicc/GetDefaultDownloadableSubscriptionListResult.java
uicc/GetDownloadableSubscriptionMetadataResult.java
uicc/GetEuiccProfileInfoListResult.java
3f24e69dbed74fd7724c0a4714ce612f1cb5bc5c 05-Feb-2018 Andreas Gampe <agampe@google.com> Frameworks: Annotate trivial @GuardedBy in core/java

Add @GuardedBy for simple functions that require a single lock
and are named XYZLocked.

Bug: 73000847
Test: m
Test: m javac-check-framework RUN_ERROR_PRONE=true
Change-Id: Icb5114fea2ff2385e1cc7511121026099e05c0ee
otification/NotificationListenerService.java
af6a5fffdc5ef30065f8bc2d1280bbd87eae3c64 13-Dec-2017 Holly Jiuyu Sun <jiuyu@google.com> Public EuiccManager APIs.

Public EuiccManager and other related necessary files.
Mark EuiccCardManager and other related necessary files as @SystemApi.
Solve lint errors and warnings.

Bug: 35851809
Test: test on phone
Change-Id: Id7895f9b35ce9d4fb6fae42ba89ca9b29dbfa74c
uicc/EuiccProfileInfo.java
uicc/EuiccService.java
uicc/GetDefaultDownloadableSubscriptionListResult.java
uicc/GetDownloadableSubscriptionMetadataResult.java
uicc/GetEuiccProfileInfoListResult.java
d1d0e4ae1a57bc9b0966c6b90706278fffbe7418 05-Feb-2018 felipeal <felipeal@google.com> Dump autofill compat packages.

Test: manual verification
Bug:72811034

Change-Id: Iee815a84e4ff9fa1ace9301b5da7c883d4e753b8
utofill/AutofillServiceInfo.java
24c90450fe3fe097a7bca51edd6a4cffd8fd13aa 28-Dec-2017 Svetoslav Ganov <svetoslavganov@google.com> Autofill compatibility mode.

Autofill helps users fill credentials, addresses, payment methods,
emails, etc without manually typing. When focus lands on a fillable
element the platform captures a snapshot of the screen content and
sends it to an autofill service for analysis and suggestions. The
screen snapshot is a structured representation of the screen content.
If this content is composed of standard widgets, autofill works
out-of-the-box. However, some apps do their own rendering and
the content in this case looks like a single view to the platform
while it may have semantic structure. For example, a view may render
a login page with two input test fields.

The platform exposes APIs for apps to report virtual view structure
allowing autofill services to handle apps that have virtual content.
As opposed to apps using standard widgets, this case requires the app
developer to implement the new APIs which may require a fair amount
of code and could be seen as a processes that could take some time.
The most prominent typs of apps that fall into this category are
browsers.

Until most apps rendering virtual content and specifically browsers
don't implement the virutal APIs, autofill providers need to fall-
back to using the accessibliity APIs to provide autofill support
for these apps. This requires developers to work against two sets
of APIs - autofill and accessibility - which is incovenient and error
prone. Also, users need to enable two plugins - autofill and
accessibility which is confusing. Additionally, the privacy and
perfomance impact of using the accessibility APIs cannot be addressed
while autofill providers need to use thes APis.

This change adds an autofill compatibility mode that would allow
autofill services to work with apps that don't implement the
virtual structure autofill APIs. The key idea is to locally enable
accessibility for the target package and remap accessibility to
autofill APIs and vise versa. This way an autofill provider codes
against a single set of APIs, the users enable a single plugin,
the privacy/performance implications of using the accessibility
APIs are addressed, the target app only takes a performance hit
since accessibility is enabled locally which is still more efficient
compared to the performance hit it would incur if accessibility is
enabled globally.

To enable compatibility mode an autofill service declares in its
metadata which packages it is interested in and also what is
the max version code of the package for which to enable compat
mode. Targeted versioning allows targeting only older versions of
the package that are known to not support autofill while newer
versions that are known to support autofill would work in normal
mode.

Since compatibility mode should be used only as a fallback we
have a white list setting with the packages for which this mode
can be requested. This allows applying policy to target only
apps that are known to not support autofill.

Test:
cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
cts-tradefed run cts-dev -m CtsAccessibilityServiceTestCases

bug:72811034

Change-Id: I11f1580ced0f8b4300a10b3a5174a1758a5702a0
utofill/AutofillService.java
utofill/AutofillServiceInfo.java
863ad0eed26ea56434c5405539adf99849fe72dc 02-Feb-2018 Beverly Tai <beverlyt@google.com> Merge "Move zen description to ZenModeConfig"
a5effb454297f1ec2e07457f65625465017528f4 01-Feb-2018 Beverly <beverlyt@google.com> Move zen description to ZenModeConfig

Test: manual
Bug: 72570739
Change-Id: I0b38e9fb9568de0207238f24453c2b216381537a
otification/ZenModeConfig.java
8356481ba2d7882173c97a34ab311151c54040f2 01-Feb-2018 Doris Ling <dling@google.com> Add icon tintable flag to suggestion.

Bug: 72330968
Test: rebuild
Change-Id: Ic11713300311ff81347efc72ea10bf9aa99f7b1c
ettings/suggestions/Suggestion.java
0f069cc22428388600cd08d8948239d438f7c347 31-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Minor javadoc clarification."
b7158102ba903b65586e0cbd4a745967e17bf8f8 31-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Changed dataset methods that take a Pattern filter to accept null."
09d58a4e3b374609601182c1dccb71a297bc97c8 30-Jan-2018 Felipe Leme <felipeal@google.com> Changed dataset methods that take a Pattern filter to accept null.

In this case, null means the field should not be filterable, which is useful
in the cases where it represents a non-authenticated value like a password.

Test: atest CtsAutoFillServiceTestCases:LoginActivityTest#filterTextDisabledUsingNullRegex
Test: atest CtsAutoFillServiceTestCases:LoginActivityTest

Bug: 71359055
Fixes: 72711778

Change-Id: Idc8248f6c95fdb50b934840689616e42ddd6378c
utofill/Dataset.java
c83abcb3dd41d70a2cdad8ddd5a1b427d1e2e669 30-Jan-2018 Felipe Leme <felipeal@google.com> Minor javadoc clarification.

Test: mmm -j frameworks/base/:doc-comment-check-docs
Bug: 72693031
Fixes: 72562886

Change-Id: Ia9c3ac12cb41eea7ee30f7ec6c2e68b5603751fd
utofill/AutofillService.java
utofill/CustomDescription.java
8420d5e596663a9478ce73a7187d0fc8040781b5 31-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Introduce a TextClassifierManagerService."
d7e0860b4359c8696f9f77473a222a13f34af0e1 31-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Re-added support for deprecated BIND_AUTOFILL permission."
8fe62bea0bdd8bebbf937351d02fdca7b1e81401 31-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New autofill APIs: DateTransformation and DateValueSanitizer."
87b7f8f1b89b6e494fead8a3705f58c1d5493b14 30-Jan-2018 Felipe Leme <felipeal@google.com> Re-added support for deprecated BIND_AUTOFILL permission.

This permission was renamed during the O previews but it was supported on the
final O release, so we need to carry it over.

Test: atest CtsAutoFillServiceTestCases
Bug: 70682223

Change-Id: I2b3d798fe9c09751138f154e6e69e6af6b60dbb1
utofill/AutofillServiceInfo.java
d32906c202db3b84151c310ecd89a07bb41208f7 18-Jan-2018 Abodunrinwa Toki <toki@google.com> Introduce a TextClassifierManagerService.

Apps wanting to use a TextClassifier service (instead of an
in-app-process TextClassifier) bind to this service. The service
binds to and reroutes calls to a configured system TextClassifierService.

TextClassifierManagerService manages the lifecycle of the configured
TextClassifierService and binds/unbinds to preserve system health.

A configurable TextClassifierService extends TextClassifierService,
declares an android.textclassifier.TextClassifierService intent, and
requires a permission that is only granted to the system so only the
system may bind to it.

The TextClassifierManagerService implements a similar interface to
TextClassifierService (i.e. ITextClassifierService) but doesn't have to.
This is done for simplicity sake and things may change in the future.

The configuration of the default service is in config.xml.
OEMs may change this with a config overlay.
If no TextClassifierService is specified, the default in app process
TextClassifierImpl is used.

Bug: 67609167
Test: bit FrameworksCoreTests:android.view.textclassifier.TextClassificationManagerTest
Test: tbd
Change-Id: I8e7bd6d12aa1a772897529c3b12f47f48757cfe6
extclassifier/ITextClassificationCallback.aidl
extclassifier/ITextClassifierService.aidl
extclassifier/ITextLinksCallback.aidl
extclassifier/ITextSelectionCallback.aidl
extclassifier/TextClassifierService.java
c8c0a82f56a5ef0cb3c8f749006d3a3b3e501849 27-Jan-2018 Felipe Leme <felipeal@google.com> New autofill APIs: DateTransformation and DateValueSanitizer.

These APIs are useful when an app uses a date value for a credit card
expiration date.

Test: atest CtsAutoFillServiceTestCases:DateValueSanitizerTest \
CtsAutoFillServiceTestCases:DateTransformationTest \
CtsAutoFillServiceTestCases:CustomDescriptionDateTest

Fixes: 72450441

Change-Id: Ie17ab17aa07e0401f4dbba3faa80cc2cc2e7d783
utofill/DateTransformation.java
utofill/DateValueSanitizer.java
utofill/ValueFinder.java
f0baef7460f578428e3dff5eed1ea4602dbb165b 26-Jan-2018 Felipe Leme <felipeal@google.com> New Autofill APIs for UserData id.

Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest CtsAutoFillServiceTestCases:UserDataTest

Bug: 70407264

Change-Id: Id49efc88e1ccbfa2634bcb6ccaa3371f6fd2ed4e
utofill/UserData.java
431af2d3f6d0df1e3889e5f845cd7c6feaebe2d3 29-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Alarms and Media visibly muted in PriorityOnly dnd"
925cde8f745c4cf946d0e215d306d2b134ca44de 23-Jan-2018 Beverly <beverlyt@google.com> Alarms and Media visibly muted in PriorityOnly dnd

- if alarms and/or media cannot pass dnd and the phone is currently
in priority only dnd, then the alarm and/or media volume stream
will appear muted in the volume dialog and sound settings
(Settings > Sound)
- if all behavior for priority only dnd is not allowed to bypass dnd
(discluding alarms and media), then ringer is muted when priority-only
dnd mode is on. If a user clicks this ringer in the volume dialog, then
dnd ends
- Updated default zen config to version 3 (added alarms and media)
Test: manually toggle alarms + media in Settings > Sound > DND >
Behavior, toggle on/off dnd and then look at volume dialog and
volume bars in Settings > Sound
Test: runtest --path cts/tests/tests/media/src/android/media/cts/AudioManagerTest.java
Fixes: 72052742

Change-Id: Ia9e809ec2be93cb5a9ba6518dce04bf3ce45110b
otification/ZenModeConfig.java
99546338273fd2fdbcab2d5cd0dfbc2035b935e8 25-Jan-2018 Kweku Adams <kwekua@google.com> incidentd: Adding privacy tag and expanding field.

Also updating priority category enum to note new values.
Bug: 65750824
Bug: 72393215
Test: flash device and check incident.proto output

Change-Id: I0c764cd4bb258160aa7140e60e81f76f84cc28ce
otification/Condition.java
otification/ZenModeConfig.java
fa0bfce3efac6dd5322e90a8f4a7274147b705e8 24-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add requireViewById"
fe05a529885281ebfb103d1a3ad6bfb862281268 24-Jan-2018 Felipe Leme <felipeal@google.com> Don't crash the app when the assist structure cannot be retrieve.

When an app trigger autofill, system_server will eventually call back into the
app to lazy load the contents of the AssistStructure used for autofill. If that
binder transaction fails, we should simple ignore it, rather than crash the app.

Test: atest CtsAutoFillServiceTestCases
Test: locally changed code to force WTFs and called 'adb shell dumpsys autofill'

Bug: 72398988

Change-Id: I490ad877b067fb37997b734718b90b00f9d318c8
utofill/AutofillFieldClassificationService.java
6faa9e50e531f7ea24bf0d112395d33a4d7531f4 11-Jan-2018 Chris Craik <ccraik@google.com> Add requireViewById

Bug:69461327
Test: atest android.view.cts.ViewTest android.view.cts.WindowTest android.app.cts.DialogTest
Test: make offline-sdk-docs

Didn't add require versions of #onFindViewById in
FragmentContainer/FragmentHostCallback since they're deprecated

Change-Id: I4231e318c92a39cfb82ab1ef8769ade2775d5e3e
reams/DreamService.java
2c78c181e7a07c24f662b769dd4819d8bba4a43b 23-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Track the most recent notifying packages"
029f10100cced4a0dd6b07b26b0ffd670881aa47 22-Jan-2018 Felipe Leme <felipeal@google.com> Changed onGetScores() to return null instead of throwing exception.

Callers (Session and AFMShellCommand) already handle null (in fact, the
signature declares it as @Nullable), so there's no point on throwing a
runtime exception...

Bug: 70939974
Test: 'adb shell cmd autofill get fc_score half kale' when service APK was not
implementing it.

Change-Id: I37da6cd13c40545626332c272759e797b5a25924
utofill/AutofillFieldClassificationService.java
7bcb57b79dd391ad62230143e858ebe9952083b1 22-Jan-2018 Julia Reynolds <juliacr@google.com> Track the most recent notifying packages

Test: runtest systemui-notification
Bug: 63927402
Change-Id: I0d4cfb5399c81a31d1192d7ac5149f33d9804c67
otification/NotifyingApp.aidl
otification/NotifyingApp.java
d11a66220c424c030542aca5c47de059d4a308cc 18-Jan-2018 Felipe Leme <felipeal@google.com> Minor API changes on Autofill Field Classification:

- Removed Scores class and use float[][] directly.
- Created constant for metadata keys.
- Removed getAlgorithName() from FieldClassification.

Bug: 70291841

Test: m -j update-api
Test: atest CtsAutoFillServiceTestCases

Change-Id: I62abf93c4f6f0804d838c7fb183c0b8bcb88a136
utofill/AutofillFieldClassificationService.java
utofill/FieldClassification.java
utofill/UserData.java
e4ac740e39589e3dd3c1696782a39fa8e74764ee 17-Jan-2018 Felipe Leme <felipeal@google.com> Implemented getAlgorithm() and getDefaultAlgorithm() using manifest metadata.

Bug: 70939974
Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest

Change-Id: I8b7028c0acfef164b84821a9e4c99817acc838f8
utofill/AutofillFieldClassificationService.java
utofill/IAutofillFieldClassificationService.aidl
db6b0fecb4765c2117f9d8b43e5941c0b8f183af 19-Jan-2018 Felipe Leme <felipeal@google.com> Merge "Moved Field Classification score logic to ExtServices."
bc055b0ef1c11337b8ec5f681097e7b51e84b9c4 06-Jan-2018 Felipe Leme <felipeal@google.com> Moved Field Classification score logic to ExtServices.

Bug: 70939974
Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest \
CtsAutoFillServiceTestCases:UserDataTest
Test: atest CtsAutoFillServiceTestCases

Change-Id: I75fd59b5d7530fcd7095b26f6e592d7459c7d235
utofill/AutofillFieldClassificationService.java
utofill/EditDistanceScorer.java
utofill/IAutofillFieldClassificationService.aidl
6fb52a5fca3d6030509aff08c22b6ffcd9fc1baf 18-Jan-2018 Felipe Leme <felipeal@google.com> Use LinkedHashMap on CharSequenceTransformation to keep order of insertions.

Test: atest CtsAppSecurityHostTestCases:CharSequenceTransformationTest#testFieldsAreAppliedInOrder
Fixes: 72118060

Change-Id: Ic8f5120fb4b5d10503a3909528accd0ecf6076f4
utofill/CharSequenceTransformation.java
1d958f8c35528ac3f31a69402ff38335d47fcb7f 10-Jan-2018 Dan Sandler <dsandler@android.com> Temporary affordance for blocking helper

When a notification is flagged by NoMan as USER_SENTIMENT_NEGATIVE (odd,
since this is actually the system's sentiment), a small â›” icon will
appear that directs you to the notification settings.

Eventually the icon will be removed, and the settings (reworded to
explain that you seem not to like this kind of notification) will be
left behind in the shade.

Bug: 63095540
Test: runtest systemui
Change-Id: I8b815cd035e9730bbbf1d4a1be17db9d494111ed
otification/NotificationListenerService.java
9e7bf9e3047bc5fe38487d463e0aff229a51d64d 11-Jan-2018 Jiuyu Sun <jiuyu@google.com> Merge "Add EuiccCardManager and EuiccCardController."
606c532dcafb3808d668926c400247f0dfe9b947 11-Jan-2018 Lucas Dupin <dupin@google.com> Merge "Allow custom keyguard transient message"
e6050a4a0fe6f370e4c96bd49b9cedc21cfa2763 11-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topic "messaging_people"

* changes:
Clipping to the top roundness when scrolling
Made the notification side paddings consistent
Changing messaging style and overall visual adoption
Improved the MessagingStyle API with Person
Added People to the Notification API
5c11024d13ee6a5d4a4c4633a5066288ec23e06c 22-Dec-2017 Holly Jiuyu Sun <jiuyu@google.com> Add EuiccCardManager and EuiccCardController.

EuiccCardManager is in the same path with EuiccManager.
EuiccCardController is in the same path with EuiccController.
Use getAllProfiles() as an example interface.
The implementation of EuiccCard and its content will be added in a
follow up CL.
The new API is marked as @hide and TODO for @SystemApi.

Bug: 38206971
Test: test on phone
Change-Id: I153937c0f79bdd1a00b06b234a6e254a3f43072c
uicc/EuiccProfileInfo.aidl
ef886544599f43e7ffc18b11b2d512b88709527c 04-Jan-2018 Lucas Dupin <dupin@google.com> Allow custom keyguard transient message

TrustAgentServices can now present a transient
message on the lock screen or AoD.

Bug: 63940122
Test: call TrustAgentService#showKeyguardErrorMessage via service,
lock device, wait for message to show up.
Change-Id: I222118787a1afb526ce7c90d46c41d0f20d8d912
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
6a85d75fbc8b0736459cebc7aa37fbb7ad46954b 10-Jan-2018 Holly Jiuyu Sun <jiuyu@google.com> Merge "Merge EuiccProfile into EuiccProfileInfo." am: b01bd54b11 am: 6a5dc32ac3
am: 20f35f962e

Change-Id: I8f7cc7e81fc163119ffa15666f054b298d47fff1
20f35f962eecfc8972da203c6eadc75668c44a4d 10-Jan-2018 Holly Jiuyu Sun <jiuyu@google.com> Merge "Merge EuiccProfile into EuiccProfileInfo." am: b01bd54b11
am: 6a5dc32ac3

Change-Id: I3d6df6f2bce5b6e19ce0ef2c13adc39fa1b9a862
7819f611dee5e4a192d2af250bd463c6894aaf51 10-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add API EuiccController#startOtaUpdatingIfNecessary"
e6153b9bff78de897cb6b52c9d605e0dc0fc929d 08-Dec-2017 Holly Jiuyu Sun <jiuyu@google.com> Merge EuiccProfile into EuiccProfileInfo.

After EuiccCard is moved to the platform, it can depend on
EuiccProfileInfo directly.

Bug: 70292228
Test: unit test
Change-Id: Ibe2c61ce9c4d2c99bac1cd9df8bb62414c46feee
arrier/CarrierIdentifier.java
uicc/EuiccProfileInfo.java
6019f9ca34f47f23148f27e8841e0f6b6d1d26f2 15-Dec-2017 Qingxi Li <qingxi@google.com> Add API EuiccController#startOtaUpdatingIfNecessary

This function requests calling app has WRITE_EMBEDDED_SUBSCRIPTIONS
permission. It will check whether the OTA update needed to be done
first. If current eUICC OS isn't latest one and OTA needed to be
performed, it will update eUICC OS. When the OS update is started or
finished, a broadcast will be sent.

Bug: 37279356
Test: E2E
Change-Id: Iea86add4bdc01c79a8714af4b3a89735ba78ee74
uicc/EuiccService.java
uicc/IEuiccService.aidl
uicc/IOtaStatusChangedCallback.aidl
feeb12a962e48834f2dc9d4ebedebeb8af9f6c7a 05-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Let wallpaper know when to animate AoD transition"
1e8a6d36bcc99aed82f9d788750f103f8b74fa43 04-Jan-2018 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Refactored Field Classification score logic so it can be moved to ExtServices."
dba6365966e341ecdca6d03944b1ec3baeeade9b 04-Jan-2018 Qingxi Li <qingxi@google.com> Merge "Add API to get eUICC's OTA status" am: 15a410a75a
am: 412aecc2b0

Change-Id: I50ec4a84ddc30e5232bd0cabb8a721ebb7feca47
cc6ad8cab77ddc9ba620182a001633f937733687 14-Dec-2017 Qingxi Li <qingxi@google.com> Add API to get eUICC's OTA status

The function will return current eUICC's OTA status and requests calling
app has WRITE_EMBEDDED_SUBSCRIPTIONS.

Test: E2E
Bug: 37279356
Change-Id: I823ed7aa9d86530c4bebd4c0b1a00f0c607105ed
uicc/EuiccService.java
uicc/IEuiccService.aidl
uicc/IGetOtaStatusCallback.aidl
27f4573d136949abeacb00f7246ff9911e9cb105 22-Dec-2017 Felipe Leme <felipeal@google.com> Refactored Field Classification score logic so it can be moved to ExtServices.

Bug: 70939974
Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest \
CtsAutoFillServiceTestCases:UserDataTest
Test: atest CtsAutoFillServiceTestCases

Change-Id: If584ab3a55744a62f427065bfd44c8c219df83e9
utofill/EditDistanceScorer.java
utofill/FieldClassification.aidl
utofill/FieldClassification.java
utofill/InternalScorer.java
utofill/Scorer.java
utofill/UserData.aidl
utofill/UserData.java
5405836497be79d5c6dcbff222bdbb5d4561bac0 14-Dec-2017 Qingxi Li <qingxi@google.com> Add API to get eUICC's OTA status

The function will return current eUICC's OTA status and requests calling
app has WRITE_EMBEDDED_SUBSCRIPTIONS.

Test: E2E
Bug: 37279356
Change-Id: I823ed7aa9d86530c4bebd4c0b1a00f0c607105ed
uicc/EuiccService.java
uicc/IEuiccService.aidl
uicc/IGetOtaStatusCallback.aidl
4adbc6b5b01e70d9b39d570d6c9aeb41df7246dc 21-Dec-2017 Andrew Solovay <asolovay@google.com> Merge "DO NOT MERGE docs: Removing spurious end </pre> tag" into oc-mr1-dev
am: acc55e61dd

Change-Id: I35d0f71a7da2dcae3ed3bab4aa111290ea4c4c60
8acb2e13420ba22d606c4affe917f51cf652a98b 21-Dec-2017 Andrew Solovay <asolovay@google.com> DO NOT MERGE docs: Removing spurious end </pre> tag

Owing to a merge mixup, ended up adding a spurious </pre> where it
had no effect. Removing it just for hygiene's sake.

This doc error is only in oc-mr1-dev, not in master, so the fix
doesn't need to be merged.

Test: make ds-docs
Bug: 70812346
Change-Id: I5b54ed8fb1f068698d4dd4536383b52165b4d81f
utofill/AutofillService.java
7ad3eb8db0873949ca2e7d1c85df5c4abac2b3ee 21-Dec-2017 Andrew Solovay <asolovay@google.com> Merge "doc: Fixing Javadoc formatting problems." into oc-mr1-dev
am: 7835c650b2

Change-Id: I662ac186b079d88fc503fa546b52b1297b98a036
e7238dd12595cb6be953aed4271636df90de17fc 15-Dec-2017 Selim Cinek <cinek@google.com> Added People to the Notification API

In order to support people without a URI and further
changes in MessagingStyle, a new person API is
introduced that allows for a richer presentation.
In addition are we now properly supporting people
without a URI, which is useful for non-handheld
clients

Test: runtest -x tests/app/src/android/app/cts/NotificationTest.java
Bug: 63708826
Change-Id: I496c893273803a2ec4fd3a5b731a6b4d483801ea
otification/NotificationListenerService.java
660d573e438c4b1a044fa399bb99272a0bcc9f22 19-Dec-2017 Lucas Dupin <dupin@google.com> Let wallpaper know when to animate AoD transition

Sometimes the screen will blank, and sometime the
wallpaper has the opportunity to animate the
transition.

Bug: 64155983
Test: atest tests/Internal/src/android/service/wallpaper/WallpaperServiceTest.java
Test: atest packages/SystemUI/tests/src/com/android/systemui/doze/DozeWallpaperStateTest.java
Change-Id: Ia92c00edb98eeeba42da33bdc7bec3feb961a658
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
0472643736639668770f3ec03268a36f115d829e 19-Dec-2017 Andrew Solovay <asolovay@google.com> doc: Fixing Javadoc formatting problems.

No code changes, just fixing typos in the doc comments.

Doc is staged to:

http://go/dac-stage/reference/android/service/autofill/AutofillService.html
http://go/dac-stage/reference/android/service/autofill/FillRequest.html

Test: make ds-docs
Bug: 70812346
Merged-In: Ia76121c60197275c6be1717c8003fe1c4baf5f97
Change-Id: I5ee04bb96234441c5740665540b5e803fcf9710f
utofill/AutofillService.java
utofill/FillRequest.java
e790d4e2fce01380aded5e2b75af78f8aaf191d2 19-Dec-2017 Andrew Solovay <asolovay@google.com> Cherrypick from from oc-mr1-dev doc: Fixing Javadoc formatting.
Original-Change-Id: I5ee04bb96234441c5740665540b5e803fcf9710f

No code changes, just fixing typos in the doc comments.

Doc is staged to:

http://go/dac-stage/reference/android/service/autofill/AutofillService.html
http://go/dac-stage/reference/android/service/autofill/FillRequest.html

Test: make ds-docs
Bug: 70812346
Change-Id: Ia76121c60197275c6be1717c8003fe1c4baf5f97
utofill/AutofillService.java
84a41d6684143bc042707636a8379fa098b637b7 19-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topic "aod_wallpapers"

* changes:
Hide AoD wallpaper after 1min
Support wallpapers in AoD
7517b5dcce8dde3a22177857b8fff6439fd98d82 22-Aug-2017 Lucas Dupin <dupin@google.com> Support wallpapers in AoD

Such wallpaper has to define supportsAmbientMode,
and set it to true on its android.service.wallpaper
meta data.

Also introduces WallpaperService.Engine#onAmbientModeChanged
to notify a live wallpaper that the display state has changed.

Change-Id: I49e846069a698b3cc3bb6e7cda98172920eaae4c
Bug: 64155983
Test: runtest -x frameworks/base/packages/SystemUI/tests/src/com/android/systemui/doze/DozeWallpaperStateTest.java
Test: runtest -x frameworks/base/tests/Internal/src/android/app/WallpaperInfoTest.java
Test: runtest -x frameworks/base/tests/Internal/src/android/service/wallpaper/WallpaperServiceTest.java
Test: set AoD wallpaper, go to aod, lock screen, launcher
Test: set regular wallpaper, go to aod, lock screen, launcher
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
f1141c00411296b59b59376182083685248f69c8 18-Dec-2017 Felipe Leme <felipeal@google.com> Removed Parcelable from FieldClassification.

Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest

Bug: 70407264

Change-Id: I667bb15e2341a926cdf35e928261bd5fa474a22b
utofill/FieldClassification.java
utofill/FillEventHistory.java
51f6cd70316cdd0662e40ad7b0109effab9cd9ad 18-Dec-2017 Felipe Leme <felipeal@google.com> Implemented multiple matches on FieldClassification.getMatches()

Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest

Bug:70291841

Change-Id: Icc015d7c76f0f11e398c3093b4ea070c8f35f589
utofill/FieldClassification.java
utofill/FillEventHistory.java
216da5dc447943e79d93a76c8c5da202824cda9d 16-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Made Autofill Field Classification API public and documented it."
ccd5d322950c287cb25b3202e4d318e57bac7da5 15-Dec-2017 Ricardo Loo Foronda <rloo@google.com> docs: Added code tag to meta-data name and fixed some @see tags am: f2a8aea735
am: 0d69f1b342

Change-Id: Ib0e6d759d002cf5418755312c42e32e07ece0576
0d69f1b342decaaa61caa34727540ccab5bb2253 15-Dec-2017 Ricardo Loo Foronda <rloo@google.com> docs: Added code tag to meta-data name and fixed some @see tags
am: f2a8aea735

Change-Id: If5601165a816e0dadc672008f8d5049563ee577f
f2a8aea735fb6452d4a4ea335dadc6f5c71eb0e1 27-Oct-2017 Ricardo Loo Foronda <rloo@google.com> docs: Added code tag to meta-data name and fixed some @see tags

Status: Ready for review.

Changes:
* Surrounded android.service.carrier.LONG_LIVED_BINDING with code tags
in CarrierService class.
* Prefixed @see tags with # in CarrierConfigManager#KEY_FORCE_HOME_NETWORK_BOOL.
* Prefixed @see tag with class name in
CarrierConfigManager#notifyConfigChangedForSubId.

Test: make ds-docs

Staged content:
*
https://android-dot-devsite.googleplex.com/reference/android/service/carrier/CarrierService.html
*
https://android-dot-devsite.googleplex.com/reference/android/telephony/CarrierConfigManager.html#KEY_FORCE_HOME_NETWORK_BOOL
*
https://android-dot-devsite.googleplex.com/reference/android/telephony/CarrierConfigManager.html#notifyConfigChangedForSubId(int)

Bug: 23289716
Change-Id: I3b5be3ecc45bfb83e3fe0ae9bc76dc7761557e08
arrier/CarrierService.java
78172e70f4c5d776678551965db7c167ee11703e 09-Dec-2017 Felipe Leme <felipeal@google.com> Made Autofill Field Classification API public and documented it.

Test: mmm frameworks/base/:doc-comment-check-docs
Test: atest FrameworksCoreTests:SettingsBackupTest
Test: m -j 100 update-api

Fixes: 67867469

Change-Id: Iedf56a2bbcde3826eb22f5ed7a96d6ed70b968f4
utofill/AutofillService.java
utofill/EditDistanceScorer.java
utofill/FieldClassification.java
utofill/FillEventHistory.java
utofill/FillResponse.java
utofill/Scorer.java
utofill/UserData.java
5ad2fbabf846da36a340eea0afa0d5369852fb73 14-Dec-2017 Holly Jiuyu Sun <jiuyu@google.com> Merge "Confirmation code second try." am: df0f5e9791
am: cdc3c3ec77

Change-Id: I4c0de71e0c488551f6d0fa5e1f73ca2971e4a5f6
895d73105b09d95e9e86a4e55131f08dc9193674 14-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add more IntDef prefixes for auto-documenting."
c5d607861bae1d5d5a4ab5b2f06abc196c91cbd6 10-Nov-2017 Holly Jiuyu Sun <jiuyu@google.com> Confirmation code second try.

Bug: 69050703
Test: test on phone
Merged-In: I3e3671bf83715ce55a9d0662f518ef837ac8f22f
Change-Id: I3e3671bf83715ce55a9d0662f518ef837ac8f22f
uicc/EuiccService.java
ce8db9911494225fcd99711d7df85a130de5a6ce 14-Dec-2017 Jeff Sharkey <jsharkey@android.com> Add more IntDef prefixes for auto-documenting.

Test: builds, boots
Bug: 70177949
Exempt-From-Owner-Approval: annotation-only changes
Change-Id: I76dde6054e06f52240bd4b1a0f196dcb74623608
utofill/FillEventHistory.java
utofill/FillRequest.java
utofill/FillResponse.java
utofill/SaveInfo.java
otification/Condition.java
otification/NotificationListenerService.java
ersistentdata/PersistentDataBlockManager.java
ettings/suggestions/Suggestion.java
rust/TrustAgentService.java
oice/AlwaysOnHotwordDetector.java
d3c1de1aef9e0ab6ee5bad64ad70a85372f02575 13-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add OWNERS for dreams"
fee76c4faacd9c56c7d43feb7848ab1eec5dd468 12-Dec-2017 Michael Wright <michaelwr@google.com> Add OWNERS for dreams

Test: N/A
Change-Id: Ie98e9b3626fabd1ea7bbbeccb9f7b05548bd27dd
reams/OWNERS
486385092b8493f9af9c124fd9f2bfda13e50190 12-Dec-2017 Holly Jiuyu Sun <jiuyu@google.com> Merge "Carrier confirmation code." am: 6627d2c4df
am: 0e788e00b6

Change-Id: Ibbb439b724ee031b76ff42ecd84c3c1f2df69ae1
d5e7ca924d993f03d5ce1fe557963bdde9d9e337 14-Oct-2017 Holly Jiuyu Sun <jiuyu@google.com> Carrier confirmation code.

If confirmation code is null and required during downloading a profile,
returns a resovable error, and show ConfirmationCodeActivity. After we
get the confirmation code from the user, continue the operation.

Add the confirmationCode as a member in DownloadableSubscription.

Merged-In: Ibe1e0fc5ddb736b411faf48ec9bea3c68972bb99
Test: unit test, e2e on phone
Bug: 36730837
Change-Id: Ibe1e0fc5ddb736b411faf48ec9bea3c68972bb99
uicc/EuiccService.java
1ec168631085ce41ba4a6e02b37dd11c67279fcc 08-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Some minor Autofill javadoc improvements."
d37f53e6f712e0618891aabb1e6facb108cd0301 07-Dec-2017 Felipe Leme <felipeal@google.com> Some minor Autofill javadoc improvements.

Test: in Tree Hugger we trust!

Fixes: 70215975
Fixes: 70299456
Fixes: 70299455
Bug: 70388595

Change-Id: I8ab3d76983259830fd90867bd2d7f1e3360b3c4e
utofill/AutofillService.java
utofill/FillRequest.java
utofill/FillResponse.java
utofill/SaveRequest.java
utofill/Validators.java
89a6c48a8b2e54f9b93211c20a126edab0eefe35 21-Nov-2017 Tarandeep Singh <tarandeep@google.com> Add support for VR InputMethod.

This change adds support for VR-only IMEs in InputMethod framework.
In order to set this VR IME, setVrInputMethod(ComponentName) should be
called by VrManager.

When VrManager calls setVrInputMethod(), IMMS changes updates
the selected input method in a transient way i.e. it doesn't
update the Settings or input history. Once VR mode finishes,
it restores last input from settings.

Bug: 63037786
Test: Manually using the sample app in bug.

Change-Id: I1db7981b5198e7e203d4578cae7e5b6d20037d0d
r/IVrManager.aidl
0d4faf14833cedccf8d990e8da7e1f8f4a598685 08-Dec-2017 Felipe Leme <felipeal@google.com> Merge "DO NOT MERGE - Backported some Autofill Javadoc improvements from master." into oc-mr1-dev
am: 11238d4f36

Change-Id: I38a6305bae7769aacaa3894744fc73dc82c25a62
33203ffd18e71e6b397b4dd8befffc6cedd8e5f5 07-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Display Cutout: Dispatch Cutout from WindowManager"
1d7bc44f65bef9abd5a8e50868a144868a1a99c6 07-Dec-2017 Felipe Leme <felipeal@google.com> DO NOT MERGE - Backported some Autofill Javadoc improvements from master.

Test: in Tree Hugger we trust!

Bug: 70215975

Change-Id: If679e735f1fe1916457c16d33d09cb47573ee7dd
Merged-In: I8ab3d76983259830fd90867bd2d7f1e3360b3c4e
utofill/AutofillService.java
utofill/FillRequest.java
5c6b6223281e0669e674df3cb489d8544c20fb84 07-Nov-2017 Adrian Roos <roosa@google.com> Display Cutout: Dispatch Cutout from WindowManager

Adds the logic to dispatch a DisplayCutout from DisplayFrames
through WindowState to the View hierarchy. Does however not yet
change how windows are laid out in response to a DisplayCutout.

The display cutout is currently never present, the following CL
will add logic to emulate a display cutout on devices that do
not have a physical one.

Bug: 65689439
Test: runtest -x frameworks/base/services/tests/servicestests/src/com/android/server/wm/WindowFrameTests.java
Change-Id: Ie4cd4b575755b66a7ffead31e28640983ef4894e
allpaper/WallpaperService.java
734afbe61e3a7180649aebe4a89fb9e21dd668ae 07-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Moar changes for Autofill Field Classification mechanism:"
a8b9e2a5454ca35c43ee8ece0d5e10ad8017714e 07-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topics "moar_fields", "fc_refactor_score"

* changes:
Implemented autofill field classification on multiple fields and user data.
Refactored the FieldsClassification score mechanism.
329d04097e1db9b6f801972d94f56c5b56c09e8a 06-Dec-2017 Felipe Leme <felipeal@google.com> Moar changes for Autofill Field Classification mechanism:

- Changed max score to float (range 0.0 - 1.0).
- Replaced getTopMatch() to getMatches().
- Created a Scorer interface with a default edit-distance implementation.
- Added a isFieldClassificationEnabled() method.

Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest
Test: atest CtsAutoFillServiceTestCases:EditDistanceScorerTest
Test: atest CtsAutoFillServiceTestCases:UserDataTest
Test: atest FrameworksCoreTests:SettingsBackupTest

Bug: 68045531

Change-Id: Ice6cbf548053b86b47980d9664a3a21219c0ff08
utofill/EditDistanceScorer.java
utofill/FieldClassification.java
utofill/FieldsClassificationScorer.java
utofill/InternalScorer.java
utofill/Scorer.java
utofill/UserData.java
26eba879f215c99448b8969386ae2586c2fa09e7 04-Dec-2017 Beverly <beverlyt@google.com> Change default dnd rules

- Created new DND Sleeping rule
- Weekend and weeknight automatic DND rules are no longer default,
they are considered user-added
- enforceDefaultRulesExist in ZenModeHelper ensures default rules are
always in the DND automatic rule list (especially important on upgrade
from O -> P)

Bug: 63077372
Test: manual
Change-Id: Ie6e89bb5d7b4483c297c142c4c56d03caa9a53e8
otification/ZenModeConfig.java
5672defaa6885bf1ac974fc48fde448ed2d047f1 04-Dec-2017 Felipe Leme <felipeal@google.com> Implemented autofill field classification on multiple fields and user data.

Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest
Test: atest CtsAutoFillServiceTestCases:FieldsClassificationScorerTest
Test: atest CtsAutoFillServiceTestCases:UserDataTest

Bug: 68045531

Change-Id: Ia9252cb5b84236a76a1419f4a2669b2e933f5177
utofill/FieldsClassificationScorer.java
utofill/FillEventHistory.java
utofill/UserData.java
bb6bfea6801cff5b50c990bdcfbd2df93ddf9023 04-Dec-2017 Felipe Leme <felipeal@google.com> Refactored the FieldsClassification score mechanism.

Before, FillEvent.getFieldsClassification() returned a map of remote ids and
scores. Now, it returns a Map of FieldClassication by AutofillId, which allows
multiple fields and scores for multiple user datas (although the initial
implementation supports only the top match for a field).

This is mostly a refactoring CL, as the implementation is still saving just one
user data entry and one field. But full support is coming next...

Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest
Test: atest CtsAutoFillServiceTestCases:UserDataTest
Test: atest CtsAutoFillServiceTestCases:FieldsClassificationScorerTest

Bug: 68045531

Change-Id: I08b29f24efbd527216f9bce2343e1bcd4b4554c0
utofill/FieldClassification.java
utofill/FieldsClassificationScorer.java
utofill/FillEventHistory.java
bf16c14cbf4af54153e691ea419c853cc5f11b62 27-Nov-2017 Beverly <beverlyt@google.com> Automatic zen rules are always priority only

- Default automatic rules are priority only
- Existing user-created rules will be changed to priority only
- New user-created rules will always be priority only
- Metrics for new dialogs and zen preference controllers

Test: manual
Bug: 63077372
Change-Id: I8694d10ebdfa67ba96f4936c74eae17b450e32af
otification/ZenModeConfig.java
be6d3524b64f9149cf9c9ab9198f6a18c045c68d 20-Nov-2017 Beverly <beverlyt@google.com> Public access to static methods in ZenModeConfig

Edits to ScheduleCalendar and ScheduleConditionProvider tests

Test: runtest -x frameworks/base/services/tests/notification/src/com/android/server/notification/ScheduleCalendarTest.java
runtest -x frameworks/base/services/tests/notification/src/com/android/server/notification/ScheduleConditionProviderTest.java$
Bug: 63077372
Change-Id: I0662c230f1f2df867f9b64d69aab3bcb88696b61
otification/ScheduleCalendar.java
otification/ZenModeConfig.java
05c1a6ca4c9649e1c998e34439a2fe85f58d6ed8 05-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New Autofill API: let service set optional header and footer for dataset picker."
6584e5e6506cd5e2cd13b35956a15b3f9bcf731b 05-Dec-2017 Colin Cross <ccross@android.com> Merge "Remove unused AIDL files" am: d0abc863f4 am: 43f665c95e
am: 3dbbd3d3a9

Change-Id: Ida23b5013fa6a3e1fd6ba3e5a699f798f29b4b84
3dbbd3d3a993926ed0755bf464cdacac11e61687 05-Dec-2017 Colin Cross <ccross@android.com> Merge "Remove unused AIDL files" am: d0abc863f4
am: 43f665c95e

Change-Id: I3d966c647103c45f8a078adcb4260c08174cf61c
43f665c95e9df71d75c92bc74e21eb3fa62cc0e4 05-Dec-2017 Colin Cross <ccross@android.com> Merge "Remove unused AIDL files"
am: d0abc863f4

Change-Id: Ia6d798f6acf3930945cac488db81ccec3792648d
d0abc863f4cdd1d914019e90bf246d639b0cdc24 05-Dec-2017 Treehugger Robot <treehugger-gerrit@google.com> Merge "Remove unused AIDL files"
e9324786a7a6aba5b9196e0ce79e30ecd1168ec8 22-Nov-2017 Felipe Leme <felipeal@google.com> New Autofill API: let service set optional header and footer for dataset picker.

Test: atest CtsAutoFillServiceTestCases:FillResponseTest#testBuilder_setAuthentication_illegalState,testBuilder_setHeaderOrFooterInvalid,testBuilder_setHeaderOrFooterAfterAuthentication,testBuilder_build_headerOrFooterWithoutDatasets
Test: atest CtsAutoFillServiceTestCases:LoginActivityTest#testAutoFillOneDataset_withHeader,testAutoFillOneDataset_withFooter,testAutoFillOneDataset_withHeaderAndFooter
Test: atest CtsAutoFillServiceTestCases

Fixes: 69458670

Change-Id: I34be762968ffcad97dbf86898d3f1745bc8d4d64
utofill/FillResponse.java
15f4ac5a944eff4d7db441e77a6334800540cb54 04-Dec-2017 Julia Reynolds <juliacr@google.com> Merge "Update 'next alarm' tracking"
3ce82e34e6684951ba89e2bfb49e8ef3ca8c951d 04-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Refactored field detection mechanism to support multiple fields."
4e1b9c199d08e5a71a8d1b2436146d914bd5dadd 30-Nov-2017 Colin Cross <ccross@android.com> Remove unused AIDL files

These files show up in a glob for all AIDL files, but are not listed
in AIDL files to be built, and have no references in codesearch
except for one unused import.

Bug: 70046217
Test: m checkbuild
Change-Id: I7d6a3bb19d2e16b5f09473f3058afcf5b4edd9b6
utofill/IAuthenticationCallback.aidl
4b3184366dfedd00fbb0ec269550295c5ea0cad9 22-Nov-2017 Julia Reynolds <juliacr@google.com> Update 'next alarm' tracking

Also improves logging and adds tests.

Test: runtest systemui-notification
Bug: 67028535
Bug: 69440234
Change-Id: I259fdc2d253d2a4ac415e23bd66a0b9d7c69b053
otification/ZenModeConfig.java
e05afb03c84e99d612be404c1e1f68ccf90e3235 25-Jul-2017 Jonathan Basseri <misterikkit@google.com> Convert ICarrierService to oneway.

Change the carrier config AIDL used by CarrierService to a oneway call.
This is the IPC used to fetch carrier config bundles from carrier apps.
Converting to oneway allows CarrierConfigLoader to be non-blocking while
it fetches config.

Bug: 63176442
Test: runtest carrierconfig-unit & manual
(cherry picked from commit 49b54d64ca5c2aa08021c2ad747597cdd4486ad8)
Merged-in: Iceaf0446321f719011f67897398da7d5998c5fc7
Change-Id: I436f6c920f68f8bbc0fd66a5ff10676ed1529383
arrier/CarrierService.java
arrier/ICarrierService.aidl
452886a5b8d7cb94ba0c53e8976ff558980db1e5 27-Nov-2017 Felipe Leme <felipeal@google.com> Refactored field detection mechanism to support multiple fields.

Now instead of using FillResponse.setFieldDetection() with an object that
contains both the autofill ids an the user data, service must:
- Set global mapping through AutofillService.setUserData()
- Pass just the autofill ids to FillResponse.setFieldClassificationIds()

This CL is purely a refactoring CL - although the new API supports multiple
values and multiple fields, the implementation is still hardcode for one
value and one field (as before).

Test: atest CtsAutoFillServiceTestCases:FieldsClassificationTest
Test: atest CtsAutoFillServiceTestCases:UserDataTest
Test: atest CtsAutoFillServiceTestCases:FillResponseTest

Bug: 68045531

Change-Id: I8d846d817dfcde3a4db7abff798bb2250e1c4e7b
utofill/AutofillService.java
utofill/FieldsDetection.java
utofill/FillEventHistory.java
utofill/FillResponse.java
utofill/UserData.aidl
utofill/UserData.java
0d0c397f2612d338d5960c866c51e68ada084262 01-Dec-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Changed Dataset.setValue() methods to allow filtering with authentication."
bbf8549ad0bab9f73501956278b25c57a17eb5ab 22-Nov-2017 Felipe Leme <felipeal@google.com> Changed Dataset.setValue() methods to allow filtering with authentication.

The Dataset.setValue() methods were created before Datasets supported
RemoteViews as presentation. As such, the service always had to provide a
value for the dataset fields, and the value could not be used for filtering
(otherwise the user could "guess" what that authenticaed values were).

But once Dataset required RemoteViews for presentation, the field values were
not used anymore when the dataset required authentication (in fact, the
setValue() methods accepted null for the value), so now we can always use the
field values for filtering.

Test: atest CtsAutoFillServiceTestCases
Fixes: 69458842

Change-Id: Ia58af8bb946f31c3806c28570b2445870d7ccf0c
utofill/Dataset.java
577e40090282638cb2df5ba4738f4ba1030a2c53 30-Nov-2017 Jiuyu Sun <jiuyu@google.com> Merge "Confirmation code second try."
0cbfdf8250ce84cda1833a52bd8eed5c6eedac9a 29-Nov-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added Privacy section to AutofillService documentation."
61121757e109ea764fe446a632b9852b6cf30366 28-Nov-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Display Cutout: Add Cutout to WindowInsets"
d4970af157733a096c449aa70456bf92db3b7ae8 10-Nov-2017 Adrian Roos <roosa@google.com> Display Cutout: Add Cutout to WindowInsets

Adds a facility for communicating the display cutout to
windows. A follow-up CL will make this a public API.

Bug: 65689439
Test: runtest -x $ANDROID_BUILD_TOP/frameworks/base/core/tests/coretests/src/android/view/DisplayCutoutTest.java
Change-Id: I2290adea0130a7e5764a9412616fd3192800e06a
allpaper/WallpaperService.java
62c9860111a126c23606c9d4071fb6f8591952b3 28-Nov-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New Autofill API: Validators.not"
4bcb01a3b588fe17717cb95ed1aa1ddd297c6ad0 22-Nov-2017 Felipe Leme <felipeal@google.com> New Autofill API: SaveCallback.onSuccess(IntentSender).

This overloaded method is useful for cases where the service needs to launch
an activity (for example, to unlock the user's vault), in which case it's
launched from the context of the activity being filled.

Test: atest CtsAutoFillServiceTestCases:SimpleSaveActivityTest#testSave_launchIntent
Test: atest CtsAutoFillServiceTestCases
Fixes: 69458616

Change-Id: I41bf5fd4954c38051e3275f2e8500a00dcf24724
utofill/ISaveCallback.aidl
utofill/SaveCallback.java
1cdf5fb4e24fc4600163fc98ca5fec230c520f59 23-Nov-2017 Felipe Leme <felipeal@google.com> New Autofill API: Validators.not

Test: atest CtsAutoFillServiceTestCases:ValidatorsTest
Test: atest CtsAutoFillServiceTestCases

Fixes: 69482353

Change-Id: Ib6be24f7d8c30915bd139f39b61ad6916b2e42d7
utofill/NegationValidator.java
utofill/Validators.java
e8ebb8cd8df1d453918dfb6cf6711e69dee1126d 23-Nov-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Changed FillResponse so it can have only a client state."
f485f89a3b64c5f5487fd3906cc52f86fc8f151d 22-Nov-2017 Felipe Leme <felipeal@google.com> Added Privacy section to AutofillService documentation.

Test: mmm frameworks/base/:doc-comment-check-docs
Bug: 69417986

Change-Id: I526e0a0df21744ac0a90ff932aaa65e07905183d
utofill/AutofillService.java
601d22007488145f8651930d23aeb7a7a95cc591 17-Nov-2017 Felipe Leme <felipeal@google.com> Minor improvements on autofill javadocs and logging.

Test: m update-api
Bug: 69456547

Change-Id: I2cab6d7d6ecbe7c1842a5be37af923dd20355b73
utofill/Dataset.java
utofill/FillResponse.java
utofill/SaveInfo.java
utofill/TextValueSanitizer.java
b57080eb4142969a7e613f0a7ce557dc7cd23a40 21-Nov-2017 Felipe Leme <felipeal@google.com> Changed FillResponse so it can have only a client state.

Test: atest CtsAutoFillServiceTestCases#FillResponseTest
Fixes: 69568694

Change-Id: I72ebb280c68db82f28d1ecb651d645eb028bafbe
utofill/FillResponse.java
f5059c39cbf72603c6a28ae9337041ddce5d4899 17-Nov-2017 Felipe Leme <felipeal@google.com> Optimize Autofill Sanitizer to work as a Validator.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 69465320

Change-Id: I0eec8c6373ae3129314eda3f1f531592b85a4118
utofill/InternalSanitizer.java
utofill/SaveInfo.java
utofill/TextValueSanitizer.java
26008bef3869841ceef9f05102adb378f65feb71 10-Nov-2017 Holly Jiuyu Sun <jiuyu@google.com> Confirmation code second try.

Bug: 69050703
Test: test on phone
Change-Id: I3e3671bf83715ce55a9d0662f518ef837ac8f22f
uicc/EuiccService.java
25771cfa5c14fa3cb7c1441ce748b278a68077f9 13-Oct-2017 Julia Reynolds <juliacr@google.com> Expose method for testing.

Bug: 62584038
Test: cts verifier
Change-Id: Ifd797f96485f0f99132bd93a78346ff7f2049a17
otification/ConditionProviderService.java
968dbf4c7fe98bf64e6c671164767c3d3cd814bd 10-Nov-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Update managed service documentation for low ram devices."
6a2877e5a9ee1563afdc3f1c0469e76bc3a79fad 14-Oct-2017 Holly Jiuyu Sun <jiuyu@google.com> Carrier confirmation code.

If confirmation code is null and required during downloading a profile,
returns a resovable error, and show ConfirmationCodeActivity. After we
get the confirmation code from the user, continue the operation.

Add the confirmationCode as a member in DownloadableSubscription.

Test: unit test, e2e on phone
Bug: 36730837
Change-Id: Ibe1e0fc5ddb736b411faf48ec9bea3c68972bb99
uicc/EuiccService.java
4a3d844742fca89c142ee24a469830d435d64689 08-Nov-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Very initial field detection prototype."
7fe465a9e77292e358d36e79f92d6360649758d0 07-Nov-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "SidekickService (base)"
24d7173cf1e3193bb48c9c6aed0261efe34f890b 20-Oct-2017 Felipe Leme <felipeal@google.com> Very initial field detection prototype.

A.K.A "OMG, It's full of TODOs!"

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.FieldsDetectionTest

Bug: 67867469

Change-Id: I7c8f7c3e35ccbae0134e2a446b7b44e1e57261fc
utofill/FieldsDetection.java
utofill/FillEventHistory.java
utofill/FillResponse.java
1356ec950f5ac601970ffd7a48049860000d159b 07-Sep-2017 Steven Thomas <steventhomas@google.com> On standalones, stay in vr mode until standby

On standalones, stay in vr mode until the Power Policy Service notifies
us it has switched to standby mode.

We still have a few issues elsewhere in the code, so the "stay in vr
mode" functionality is only enabled if the system property
"persist.vr.use_standby_to_exit_vr_mode" is set to true, which you can
do like this:

$ adb shell setprop persist.vr.use_standby_to_exit_vr_mode true

Bug: 65248224

Test: - Confirmed on a standalone that doffing leaves us in vr mode for
5 minutes, then we get a notification that we've entered standby, and we
exit vr mode. Confirmed we enter vr mode again when we don the device.

- Confirmed no behavioral change on phones, as expected.

Change-Id: I41d62761fe8c2fc7630f0615732453669cb25f06
r/IVrManager.aidl
10a4a64bcc046ca0429069ad6dc2d20b65279bc6 25-Sep-2017 Chris Phoenix <cphoenix@google.com> SidekickService (base)

Test: builds; Sidekick watch face animates in Ambient
Change-Id: I5946dbf7194653ac4707b6c186b0a9197d125d5f
reams/DreamService.java
a17d0ac384e356a8a53278d207ac8d5ad346b703 30-Oct-2017 Winson Chung <winsonc@google.com> Merge "2/ Add API to start overview activity with assist callbacks"
6a2ec5b5187f46b4509da75ebc527aca78b7acb4 26-Oct-2017 Felipe Leme <felipeal@google.com> Minor fixes on SaveInfo javadoc.

Test: ran 'mmm -j108 frameworks/base/:doc-comment-check-docs' and checked HTML
Bug: 68402851

Merged-in: I9ba776be77132942d516d23ac69d3ad9f9b3da62
Change-Id: I9ba776be77132942d516d23ac69d3ad9f9b3da62
utofill/SaveInfo.java
ec1ef09c23d505f49010fa3ecb85ed19aaa27fee 26-Oct-2017 Winson Chung <winsonc@google.com> 2/ Add API to start overview activity with assist callbacks

- Only the recents component package can launch the overview activity
directly, and if an assist data receiver is provided, then assist data
will be proxied to the caller.

Bug: 67864419
Test: com.android.server.am.RecentTasksTest
Test: com.android.server.am.AssistDataRequesterTest
Test: CtsVoiceInteractionTestCases
Change-Id: Icdd7e6716a84c11e9262ce5453f7d39ae7d8ce77
oice/VoiceInteractionSession.java
599ef4698bfa71b35f62f84cb5893faf499fbcd2 27-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New Autofill API: FillResponse.disableAutofill(duration)"
7598da83c2c49bb8827f8e57c4ce5c331dc8a14a 27-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed all (?!?!?) references to 'affordance' on Autofill documents."
17292d1a25a4d0c3910a687a4207e7ff5688be1d 24-Oct-2017 Felipe Leme <felipeal@google.com> New Autofill API: FillResponse.disableAutofill(duration)

This API is useful to improve the autofill performance for the scenarios where
the service knows it cannot autofill an app or activity.

Bug: 67867469

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testFillResponseAuthWhenAppCallsCancel

Change-Id: I58e3eb5714db840104e699d614e750c03e26e8ca
utofill/FillResponse.java
2c888424f84ce976a80293a59bac116425a3a1d9 26-Oct-2017 Felipe Leme <felipeal@google.com> Removed all (?!?!?) references to 'affordance' on Autofill documents.

Test: nope

Change-Id: I6e38ee76adf9469b058937092c8e1d06800efdea
utofill/CustomDescription.java
utofill/FillResponse.java
utofill/Transformation.java
5e0bfe7706fe3addce22f0f5ffcd997cf3394458 26-Oct-2017 Felipe Leme <felipeal@google.com> Minor fixes on SaveInfo javadoc.

Test: ran 'mmm -j108 frameworks/base/:doc-comment-check-docs' and checked HTML

Change-Id: I9ba776be77132942d516d23ac69d3ad9f9b3da62
utofill/SaveInfo.java
8149961c0aa22e80e4d44659814844aeb7a63c1e 11-Oct-2017 Julia Reynolds <juliacr@google.com> Update managed service documentation for low ram devices.

Bug: 35219985
Test: make offline-sdk-docs
Change-Id: I925c55970288891373c3632225f7435c375da9fd
otification/ConditionProviderService.java
otification/NotificationListenerService.java
6a6fe31867cfe83effe44f6bcd7123e302289458 23-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed .aidl files that are not used on other.aidl files."
85be5b826d2822559cd866f2060c1cf7ee606538 21-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Minor improvements on Autofill:"
25a3a5fb1765a289ddc418f8da2fa9837623353a 21-Oct-2017 Felipe Leme <felipeal@google.com> Removed .aidl files that are not used on other.aidl files.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Bug: 67867469

Change-Id: I7f598d0016d49a3956d4be00ab5acca6a62d56eb
utofill/Dataset.aidl
utofill/SaveInfo.aidl
d2167ba99cbec712c988cc04a05d4a40602afd29 21-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Let SuggestionService receive suggestion-launched signal."
6f12e67e1724cc52d0f5a5ca0b201a612d2859d8 20-Oct-2017 Felipe Leme <felipeal@google.com> Minor improvements on Autofill:

- Don't print PII on Dataset.toString()
- Use proper method to get last response

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Bug: 67867469

Change-Id: I41579ba30366e07193ab4f7790e5a107c85d6ec2
utofill/Dataset.java
utofill/FillEventHistory.java
utofill/FillResponse.java
e4b5ac2f971b6697b41a5bc5d6e63770b4f0fcfe 20-Oct-2017 Fan Zhang <zhfan@google.com> Let SuggestionService receive suggestion-launched signal.

This is the opposite signal to dismissSuggestion().

Bug: 65065268
Test: runtest --path core/tests/coretests/src/android/service/settings/suggestions/SuggestionServiceTest
Change-Id: Iff708fd1b06e12b6d46aefdcc658e96b44063e67
ettings/suggestions/ISuggestionService.aidl
ettings/suggestions/SuggestionService.java
24604a3a62a1bf79ec5b53bbc674a65f0ae59da3 20-Oct-2017 Felipe Leme <felipeal@google.com> Merge "New Autofill API: TYPE_CONTEXT_COMMITTED events."
5e9e79ccec447b70bd9806316aafbb3d2d1bebdf 20-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Allow datasets without presentation to optimize authentication use case."
7bd96d32a17553cf5772c7abf5a759636bcc4943 20-Oct-2017 Jonathan Basseri <misterikkit@google.com> Merge "DO NOT MERGE Revert "Convert ICarrierService to oneway."" into oc-mr1-dev
63f7227f0357dcebe63e0aaea180332fdc881cac 19-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Improved logging on autofill validators."
be530ca6713569d33f9ed78df590b3446139dbfa 19-Oct-2017 Jonathan Basseri <misterikkit@google.com> DO NOT MERGE Revert "Convert ICarrierService to oneway."

This reverts commit 49b54d64ca5c2aa08021c2ad747597cdd4486ad8.

Bug: 63400667
Change-Id: Ica0696bf4ae3f9a84f0e4ad6e1207374696e9497
arrier/CarrierService.java
arrier/ICarrierService.aidl
9856b19f4beb19164921de7dd1da638b61e58177 19-Oct-2017 Felipe Leme <felipeal@google.com> Allow datasets without presentation to optimize authentication use case.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testAutoFillDatasetWithoutFieldIsIgnored
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.DatasetTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 36547794

Change-Id: Ibf1d7e45dd2534b6990434db58bc4010f68433ec
utofill/Dataset.java
e325356e3659aee6588a5a2cbf64f81240352d7f 19-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New Autofill API: CustomDescription.batchUpdates()"
3a585a8ef14ffe57fe8addc690d06614f10e2033 19-Oct-2017 Felipe Leme <felipeal@google.com> Improved logging on autofill validators.

Also minor-fixed a javadoc comment.

Test: manual verification
Bug: 67955334

Change-Id: Ieb2265049b0416b3427f63e14e33fb9fa50a16e7
utofill/Dataset.java
utofill/LuhnChecksumValidator.java
utofill/OptionalValidators.java
utofill/RequiredValidators.java
59c446403c8b54358be57ef569967a19657ff651 13-Oct-2017 Felipe Leme <felipeal@google.com> New Autofill API: TYPE_CONTEXT_COMMITTED events.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts#FillEventHistoryTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 65130630

Change-Id: I7f0336752be50f6b5f55e01865fe70b6d44dedbe
utofill/FillEventHistory.java
utofill/FillResponse.java
8246f82636ac9f9784d49e249ccb3a633901291f 18-Oct-2017 Beverly <beverlyt@google.com> ZenModeConfig XML no longer stores alarms twice.

Test: manual
Change-Id: Ib1824c4a5950e3cffeae0669bfdd17672dfa10a7
Fixes: 67929980
otification/ZenModeConfig.java
63c601a06b02a8334ff1c24a7d107195dd26e4be 28-Sep-2017 Felipe Leme <felipeal@google.com> New Autofill API: CustomDescription.batchUpdates()

This API allows the service to apply updates in the save UI remote view, when
a given condition applies.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.CustomDescriptionTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.CustomDescriptionUnitTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.BatchUpdatesTest

Fixes: 63933969

Change-Id: I5002f231cd2029463b81a68fb3acd9bf1ae5964a
utofill/BatchUpdates.java
utofill/CustomDescription.java
utofill/InternalTransformation.java
utofill/InternalValidator.java
utofill/Validator.java
fac6655cf530a863ee9187760739e4c9ddf21dd9 13-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New Autofill API: SaveInfo.setTriggerId()"
a937238eaeac6c3577af0c14ceca822890cc979b 09-Oct-2017 Felipe Leme <felipeal@google.com> Let service set the SaveRequest.getClientState() on dataset auth responses.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testFillResponseAuthClientStateSetOnIntentOnly
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testFillResponseAuthClientStateSetOnFillResponseOnly
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testFillResponseAuthClientStateSetOnIntentAndFillResponse

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testDatasetAuthClientStateSetOnIntentOnly
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testDatasetAuthClientStateSetOnFillResponseOnly
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testDatasetAuthClientStateSetOnIntentAndFillResponse

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 67588471

Change-Id: I05a56bfc02400ce87077c93301abc0e0e1aa59a6
utofill/SaveRequest.java
2fe3ade8139795df9def96d44ee97bf47acec967 29-Sep-2017 Felipe Leme <felipeal@google.com> New Autofill API: SaveInfo.setTriggerId()

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.SimpleSaveActivityTest#testExplicitySaveButton
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.SimpleSaveActivityTest#testExplicitySaveButtonWhenAppClearFields
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Bug: 65118073
Fixes: 67006548

Change-Id: Id12179086567d014f35fe4177b041745fb19bafd
utofill/AutofillService.java
utofill/SaveInfo.java
1e26cacc7196b3e0dc581fd94be7a893a02f4ed8 12-Oct-2017 Beverly Tai <beverlyt@google.com> Merge "Add alarm + media/other to NotifManager.Policy"
b147de882add9b08184f10392f2a04aae22282ce 11-Oct-2017 Felipe Leme <felipeal@google.com> Merge "Document how to handle save on multi-steps activity." into oc-mr1-dev am: a4dffa032b
am: 705d318485

Change-Id: I75ff776435f53c8aed5731dfe984813af48c760a
ed7796f3020245a9c0de7d7a8c927d44aa0f72a2 11-Oct-2017 Felipe Leme <felipeal@google.com> Document how to handle save on multi-steps activity.

Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML
Fixes: 67650364

Change-Id: Ib9e6c63e537b47a0670fe6bdf5163e8ab80eef0c
utofill/AutofillService.java
0421687f0c628c064f19cb39a8aca18149c70f99 28-Sep-2017 Beverly <beverlyt@google.com> Add alarm + media/other to NotifManager.Policy

Alarm and media/system/other policies added to be able to toggle
filtering of alarm and media sounds for ZenMode/DND.

Bug: 63077372
Test: runtest -x frameworks/base/services/tests/notification/src/com/android/server/notification/ZenModeHelperTest.java
Change-Id: I256782af00ad736c1aebdb96f9400d66ebb64a15
otification/ZenModeConfig.java
a3c728e1a2633c4d6a3328e23a4f3a24aa5aace8 09-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topic "jr-blocker"

* changes:
Initial notification blocker
Provide more information to the noti asst
503ed9404e30d0a965d137c67cbac863ef303b70 04-Oct-2017 Julia Reynolds <juliacr@google.com> Provide more information to the noti asst

And pass user sentiment from the assistant to listeners.

Not all of the information the assistant might want is provided
by systemui yet, but the hooks to do so have been added in this CL.

Bug: 63095540
Test: runtest systemui-notification, cts
Change-Id: I8194c065b7895d6013a40320e76eb62caab1263f
otification/Adjustment.java
otification/INotificationListener.aidl
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
otification/NotificationStats.aidl
otification/NotificationStats.java
463da25b5076fdf48a6d58504b7886e36a1fcda3 06-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New Autofill API: add (optional) content description on ImageTransformation."
d8416b7e62590acb7dfbacf43e200af349a9479f 06-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New Autofill API: SaveInfo.addSanitizer()"
cd2969c85de5214375de9911c07c205c211c366f 05-Oct-2017 Felipe Leme <felipeal@google.com> New Autofill API: SaveInfo.addSanitizer()

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.SimpleSaveActivityTest#testDontSaveWhenSanitizedValueDidntChange
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.SimpleSaveActivityTest#testSanitizeOnSave
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.TextValueSanitizerTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.SaveInfoTest

Bug: 67370425

Change-Id: Ie13789a08da98bea4abfd4ae87b17fd3eff24e17
utofill/AutofillService.java
utofill/InternalSanitizer.java
utofill/Sanitizer.java
utofill/SaveInfo.java
utofill/TextValueSanitizer.java
5a8466172ab0c9c870745493622231d7cc2e3145 05-Oct-2017 Ruben Brunk <rubenbrunk@google.com> Merge "Bind VR compositor service from VrManagerService." into oc-mr1-dev am: c765c2c448
am: 3de064f7cc

Change-Id: I97be49896650231b057285ab13672324a8415f11
c765c2c448b7c38e6fb72c96fc31f4a568433404 05-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Bind VR compositor service from VrManagerService." into oc-mr1-dev
678f0b120565c3597352a3ced0a5613b2dae6951 05-Oct-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "New autofill API: let service explicitly set dataset filter."
27a026ac1aefe639f41b5c79817abb9ea09a03d3 03-Oct-2017 Felipe Leme <felipeal@google.com> New autofill API: let service explicitly set dataset filter.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#filterTextUsingRegex
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testDatasetAuthFilteringUsingRegex
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.DatasetTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases
Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML

Fixes: 67314013

Change-Id: I4412c1bf650219d005b9287033b463de6aee764d
utofill/Dataset.java
8369c689d3911e3c60819fe7989ca2ca1aa491e0 04-Oct-2017 Felipe Leme <felipeal@google.com> Merge "Improved javadocs for Autofill save workflow." into oc-mr1-dev am: 94e07022c2
am: d03db3c7f9

Change-Id: I29dee744197d18cf5085b8b7c23d2cdd29c1dc78
52ea662280a3463bdd72feac879950334f0c5dd9 03-Oct-2017 Ruben Brunk <rubenbrunk@google.com> Bind VR compositor service from VrManagerService.

- Allow VR system application to have VR manager service bind a
compositor process so that oom scoring for the compositor process can be
adjusted.

Bug: 38390640

Test: Check that the VrCore compositor process is -700 on AIO devices with:

adb shell procrank -o

Change-Id: I7b5bce5eb87bd5ed0fdeadf4ec7bdd2b361ab875
r/IVrManager.aidl
ce8f7269a01badb5bb037346dfd4d81dd13457d0 27-Sep-2017 Felipe Leme <felipeal@google.com> New Autofill API: add (optional) content description on ImageTransformation.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t ImageTransformationTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t CheckoutActivityTest#testCustomizedSaveUiWithContentDescription

Fixes: 67009271

Change-Id: Ic6e7c992c04f85a33c235533c3b00664d5d28810
utofill/ImageTransformation.java
30040fa3e2841abc8e024e39a3eca80f76b0cc23 03-Oct-2017 Felipe Leme <felipeal@google.com> Improved javadocs for Autofill save workflow.

Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML

Bug: 67367585

Change-Id: I25e0f2f6667a4fad6e039f9518c973bac0bc8c7c
utofill/AutofillService.java
utofill/SaveCallback.java
6abced38e5947c6218ba1a0edcf0d8aa3184a43e 27-Sep-2017 Fan Zhang <zhfan@google.com> Add more fields in Suggestion model

- Icon and suggestionType are needed to customize suggestion UI in
Settings.

Bug: 65065268
Test: instrumentation test
Change-Id: I62ca80128d327a2c2e925ed37529c0255ca37a8a
ettings/suggestions/Suggestion.java
3ce370a98c23ec2ff97c27abdbab2a819e4b24cf 27-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Added missing quote (") on anchor tag." into oc-mr1-dev am: 7c112b733c
am: 33b907f6b0

Change-Id: I0e4382cdda9d5be28542d8cb8a4762b5b5513e0c
a821efeeb72bd4658feeabf7370782a33ad6b300 26-Sep-2017 Felipe Leme <felipeal@google.com> Added missing quote (") on anchor tag.

Test: 'm -j doc-comment-check-docs' then verify resulting HTML
Fixes: 66958057

Change-Id: Ie5914a5af191866404b6fbf244c78e145c59a8b1
utofill/AutofillService.java
8672d81355fae3459ed464899bec2cc1da4ce5ff 23-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixing method asymmetry in Parcel"
15b9eb5dac8c161b16035ccdeda5f40c767f80a9 22-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Add metrics (and moar logging) for when a service disables itself." into oc-mr1-dev am: 6f50d16338
am: cbbc364ec0

Change-Id: Iba0a0e66168a5716aa7cfc2f068fa922d19b02e9
9d41449ff4efac108268815f67dd35797319e78c 20-Sep-2017 Felipe Leme <felipeal@google.com> Add metrics (and moar logging) for when a service disables itself.

Test: adb shell logcat -b events | grep sysui_
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Bug: 65376559
Bug: 65856399

Change-Id: Ieb54bb0a58ecd51da663170a12817d33188ac9f0
utofill/AutofillServiceInfo.java
0e60f22d2dd0ad2b30f38f4b55847a239d27eef5 22-Sep-2017 Sunny Goyal <sunnygoyal@google.com> Fixing method asymmetry in Parcel

Test: manually
Change-Id: I2a8321023b40cc74b7026eb0fb32a9cc5f5543a9
utofill/Dataset.java
utofill/SaveRequest.java
221c182ddc4439c72107aa436a8a0271dd6d7af8 21-Sep-2017 Jonathan Basseri <misterikkit@google.com> Merge "Convert ICarrierService to oneway." into oc-mr1-dev am: 806af68f5d
am: c323c9f4e9

Change-Id: Iaab75e584578be138d9e629bec59e32691771b67
49b54d64ca5c2aa08021c2ad747597cdd4486ad8 25-Jul-2017 Jonathan Basseri <misterikkit@google.com> Convert ICarrierService to oneway.

Change the carrier config AIDL used by CarrierService to a oneway call.
This is the IPC used to fetch carrier config bundles from carrier apps.
Converting to oneway allows CarrierConfigLoader to be non-blocking while
it fetches config.

Bug: 63176442
Test: runtest carrierconfig-unit & manual
Change-Id: Iceaf0446321f719011f67897398da7d5998c5fc7
arrier/CarrierService.java
arrier/ICarrierService.aidl
723bf37ab2e4b535a6061c02df03fcec57006e37 26-Aug-2017 Fan Zhang <zhfan@google.com> Initial API for providing suggestions.

This is a WIP system api that will be
- Implemented by one unbundled app (SettingsIntelligence) using system-sdk,
- and consumed by Settings app.

Note: The bundled app does not have permission to read/write any
user settings. Nor does it have permission to call any private API
to do anything unsafe.

Test: builds
Test: instrumentation test
Bug: 65065268
Change-Id: Ib190c0e4c167deb3c6197b8a5b39d442d804770b
ettings/suggestions/ISuggestionService.aidl
ettings/suggestions/Suggestion.aidl
ettings/suggestions/Suggestion.java
ettings/suggestions/SuggestionService.java
627cc3c7ae03d46f775a0e681034c38ad0867bd7 09-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Don't log TYPE_DATASET_SELECTED on dataset authentication." into oc-mr1-dev
09545e3fa720eece97939e0cb1677f39ac2fade4 09-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added more logging to diagnose a racy runtime restart." into oc-mr1-dev
2ad2e7c065173b26afed2b2f9f8c92970ee92030 09-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Javadoc: Added alternative to Package verification." into oc-dev am: 092349600d am: 33d476c170 am: 66e3c9aaf8
am: 210485221c

Change-Id: I6beec69db2fcdb2914859f7ff78974822dc40d8e
210485221c13d21d664e310291ea46ff66544e6b 09-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Javadoc: Added alternative to Package verification." into oc-dev am: 092349600d am: 33d476c170
am: 66e3c9aaf8

Change-Id: I07156ab1aec1415ed3c484da0fe3567896c073b7
bc1af42171b7cf0ff67d1fbc18ad7dc0fca032ef 08-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Javadoc: Added alternative to Package verification." into oc-dev am: 092349600d
am: 33d476c170

Change-Id: I59c6ddc48fad9178b03c7a1da7957238d4045ea7
33d476c170e2864aa5e3b6fc83ba3ad551a9ad2b 08-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Javadoc: Added alternative to Package verification." into oc-dev
am: 092349600d

Change-Id: Ic765df95fc660fb0df8a0f027d739ea999a36702
ada46b3fe737e94fc6ffa2afbacc419e15f01b67 08-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Fixed CharSequenceTransformation to use find() instead of matches()." into oc-mr1-dev am: 48bf1ca5d4
am: 7f3510110c

Change-Id: Ib20cd412b29ab2a2d84ea9c28998c3c811140e05
c9982ce30072338237237b707f5ca7bc7a727577 08-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Don't log TYPE_DATASET_SELECTED on dataset authentication."
5664b30008cfd2a83a06675b43997166efbd79ed 08-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "OemLockService: remove canUserAllowOemUnlock()" into oc-mr1-dev
48bf1ca5d4d5a906b53cdcbebb1723caaf763504 08-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed CharSequenceTransformation to use find() instead of matches()." into oc-mr1-dev
63f7906c1de0f4c88e2a3c6034666dc9cf35a3a7 06-Sep-2017 Felipe Leme <felipeal@google.com> Don't log TYPE_DATASET_SELECTED on dataset authentication.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Bug: 65007529
Fixes: 65403592

Merged-In: I98f1198cbe1836c8154b73a1227be4f6947abc19
Change-Id: I98f1198cbe1836c8154b73a1227be4f6947abc19
utofill/FillEventHistory.java
8f0fad859c1386397805478e7b47acbd14f24022 06-Sep-2017 Felipe Leme <felipeal@google.com> Don't log TYPE_DATASET_SELECTED on dataset authentication.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Bug: 65007529
Fixes: 65403592

Change-Id: I98f1198cbe1836c8154b73a1227be4f6947abc19
utofill/FillEventHistory.java
85be690734cfe8db23b956e0f732b48a8ca41f7e 07-Sep-2017 Andrew Scull <ascull@google.com> OemLockService: remove canUserAllowOemUnlock()

No longer used by Settings as the logic was wrong.

Test: gts-tradefed run gts -m GtsOemLockServiceTestCases
Bug: 65124732
Change-Id: I44e5f697aabd2b5eefecf64060502b5c9ef5f911
(cherry picked from commit d37fe2d3e1cbf03161df9f4e16f791a99445cdc1)
emlock/IOemLockService.aidl
emlock/OemLockManager.java
96a9d0130a8db4fc4070029e7245ce7e51eb1641 08-Sep-2017 Andrew Scull <ascull@google.com> Merge "OemLockService: remove canUserAllowOemUnlock()"
1a7048f5d8b5dff95e69aff57ab7caa50beb5661 08-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added more logging to diagnose a racy runtime restart."
e102579e4c0bb9703eeaccde92f8e7e40ad7c3ef 08-Sep-2017 Felipe Leme <felipeal@google.com> Merge "Finishes the session when the service returns a null response on authentication." into oc-mr1-dev am: a61839458f
am: 1c0d25fc56

Change-Id: Ie332a146dafde80058e6b30d54fffb8d5d4a7dc7
1540bfd21d96a459613d7091005307b21de838d9 08-Sep-2017 Felipe Leme <felipeal@google.com> Fixed CharSequenceTransformation to use find() instead of matches().

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.CharSequenceTransformationTest#testReplaceAllByOne
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 65459117

Change-Id: Ib5ff31b6b12e5583e736a0593e941e1556ae7384
utofill/CharSequenceTransformation.java
8fa5f5e7dfbf99807ac030a9c59333453c0d59db 07-Sep-2017 Felipe Leme <felipeal@google.com> Added more logging to diagnose a racy runtime restart.

Also fixed a possible NPE on saveLocked() and improved locking.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases
Bug: 65374274

Merged-Id: I4b8368a9d19b4b4da76533dadb013ff2e2922955
Change-Id: I4b8368a9d19b4b4da76533dadb013ff2e2922955
utofill/FillRequest.java
a012d7e62bdf2f3a3fe19a523a7034b52cbe7e2a 07-Sep-2017 Felipe Leme <felipeal@google.com> Added more logging to diagnose a racy runtime restart.

Also fixed a possible NPE on saveLocked() and improved locking.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases
Bug: 65374274

Change-Id: I4b8368a9d19b4b4da76533dadb013ff2e2922955
utofill/FillRequest.java
d37fe2d3e1cbf03161df9f4e16f791a99445cdc1 07-Sep-2017 Andrew Scull <ascull@google.com> OemLockService: remove canUserAllowOemUnlock()

No longer used by Settings as the logic was wrong.

Test: gts-tradefed run gts -m GtsOemLockServiceTestCases
Bug: 65124732
Change-Id: I44e5f697aabd2b5eefecf64060502b5c9ef5f911
emlock/IOemLockService.aidl
emlock/OemLockManager.java
b0a4057d44c6bde829a1c45f3d7cb92aab8a489b 05-Sep-2017 Felipe Leme <felipeal@google.com> Finishes the session when the service returns a null response on authentication.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testFillResponseAuthServiceHasNoData
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 64985246

Change-Id: Id9a4b9f1752dcee6c67ac659b9dbd6dd1dd7b43c
utofill/FillResponse.java
87f03be771dde465606e33282ab4b80ece2ecd49 31-Aug-2017 Felipe Leme <felipeal@google.com> Javadoc: Added alternative to Package verification.

Bug: 64125551
Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML

Change-Id: I371cd1752ab92e19461fe3bf3d034c7bc83ca2dd
utofill/AutofillService.java
9852897bf6a1d4c01ebb5afddaa13be5285810b9 01-Sep-2017 Felipe Leme <felipeal@google.com> New Autofill API: SaveRequest.getDatasetIds()

Test: modified some existing CTS tests to use it
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 64843801

Change-Id: I95fe7766f19e5a9eea9d7138636a15cc832c704c
utofill/Dataset.java
utofill/FillEventHistory.java
utofill/SaveRequest.java
9eb7a69e785b490be00d87ffccd4c861507fca50 01-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed deprecated BIND_AUTOFILL permission."
47f4cbdf046abe0fd5a237b2798cf6ee5a3ddd12 01-Sep-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added getClientState() to FillEvent; deprecated it on FillEventHistory."
fff9f7ed6154a209beefcbc40d8faf68c68f711c 31-Aug-2017 Felipe Leme <felipeal@google.com> Removed deprecated BIND_AUTOFILL permission.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 37563972

Change-Id: If751eb94336756da205908deae9e3b9b1c67c4e8
utofill/AutofillServiceInfo.java
ac2a765a188a463a603ea22246ac0b265f249ce7 31-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed FillResponse.toString() to display list of datasets." into oc-mr1-dev
1c501ebfec42eed5abefdb3b21b45f2f253f7a64 30-Aug-2017 Felipe Leme <felipeal@google.com> Added getClientState() to FillEvent; deprecated it on FillEventHistory.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 62830277

Change-Id: Ib99a342c931f4fd44fc8aced1faef0b75588f63d
utofill/FillEventHistory.java
88cfa8090128cd8b8da36df3d08bd705d730504d 29-Aug-2017 Felipe Leme <felipeal@google.com> Fixed FillResponse.toString() to display list of datasets.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Bug: 63392631

Change-Id: I893f468ee20d069b16f00d38f5fa18ed60826d03
utofill/FillResponse.java
c24a56ae065bfc4b21f646d0c754b5f4db7c7be5 03-Aug-2017 Felipe Leme <felipeal@google.com> Hides the Save UI while handling a pending intent from CustomDescription.

When the AutofillService sets a PendingIntent to launch an activity when
clicking a chield view (for example, to lauch a web page displayign the terms
and conditions of saving something), the system must hide the Save UI and
restore it after the new activity is dismissed.

That sounds simple in the surface, but it requires a huge refactoring behind
the scenes, such as injecting a token in the activity intent and using that
token to hide / cancel the UI during some activity lifecycle events.

Test: lotta of brand-new shinning tests on CtsAutoFillServiceTestCases
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Change-Id: Ie8ec7aeb2c63cab68467046c1a9dcf85dbcc24ec
Fixes: 64309238
utofill/CustomDescription.java
0405d12a31253dd125d21688fd692966d84ec0e5 25-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Allow VR State Listeners with RESTRICTED_VR_ACCESS permission." into oc-mr1-dev
017c0192d71e8b1969806d87433ec83a068f9401 25-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Minor Autofill javadoc fixes." into oc-dev am: 560221752e
am: 948e9ff4d3

Change-Id: I322ab59aa9600b7deb5a48f2e6fc6e012053b8f3
948e9ff4d30f5cb8def46abc7a6ae487165e9741 25-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Minor Autofill javadoc fixes." into oc-dev
am: 560221752e

Change-Id: Ib2924dae99bfe132a56a1583ecf4a88f833d3937
e6d772330744d2c27545dabfe60a4023495c0925 09-Aug-2017 Santos Cordon <santoscordon@google.com> Allow VR State Listeners with RESTRICTED_VR_ACCESS permission.

Extend the ability to use VrStateListeners to applications that
have RESTRICTED_VR_ACCESS permission. Previously, it required
ACCESS_VR_MANAGER only.

Add VrStateCallback object and methods to VrManager to access the
functionality outside of frameworks.

Bug: 64360244
Test: Manual. Tested ability from VrCore.

Change-Id: I01f1c75b1ccd44a09364df84218168cf6caab322
r/IVrManager.aidl
08157c42aeda256aada240190b054a2d074d32a7 22-Aug-2017 Chris Thornton <thorntonc@google.com> The VIS should return an AOHD regardless of keyphrase availability.

Bug: 64932385
Test: Revert to previous behaviour
Change-Id: I10ae9ffe189a5d2dda5c74d0cff05f57e2f9bad7
oice/VoiceInteractionService.java
94011333e8221997009c8b3c3bdb3b96b4b8a93a 16-Aug-2017 Felipe Leme <felipeal@google.com> Minor Autofill javadoc fixes.

Bug: 64125551

Test: no, thanks

Change-Id: Idea93d3a55705fbed6ede7eac0c0791300ff1c90
utofill/AutofillService.java
6ba128762f3abfc54b5812e09d0b693bdfc21e66 16-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Calls CancellationSignal when onFillRequest() times out." into oc-mr1-dev
2220049d581ccf5e27e2051da75d7bb9f9636370 15-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Additional documentation about Autofill / WebView security." into oc-dev am: 36cbdef880
am: a3c2cee055

Change-Id: Ie107dd462a47009a34ee3768183dfda2e36107c3
82e7dfcae89f65a7dba346a40dfb58f65d7ab26e 15-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Additional documentation about Autofill / WebView security." into oc-dev am: 36cbdef880
am: 7e9f379b50

Change-Id: I1eceb903fed2c46db35c9270769bb0f8cc44150f
77f3300f4856b5a95856895945ab2d28580b5773 15-Aug-2017 Charles He <qiurui@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c am: b1141b6ff0 am: 1cd9e8096f am: 6dfc8d8d4d am: a3c1de7e49 am: 4acf4fabf4 am: 40317127f4 am: 159cd14334 am: 24587d57cf am: 0fa9328b80
am: b0fa5855dc

Change-Id: Iaadf2350cd86ffc598e666e0d9dc735e5a7889f0
a3c2cee05562838cf64e7d0946b2ea66e6541304 15-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Additional documentation about Autofill / WebView security." into oc-dev
am: 36cbdef880

Change-Id: Ie198dbbdc7ab4ea1089c7363f1b1d2df333c1d8f
2ae412019bd6fac53b5fb951a72d2250cb3372d9 15-Aug-2017 Charles He <qiurui@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c am: b1141b6ff0 am: 1cd9e8096f am: 6dfc8d8d4d am: a3c1de7e49 am: 4acf4fabf4 am: 40317127f4 am: 159cd14334 am: 24587d57cf am: 0fa9328b80
am: 51ca967453

Change-Id: I8f4ae84ea5606706b0390b25c6aa5b5e94c2e9ce
b0fa5855dc9eeeca8e3c8675fdd812871d935f0d 15-Aug-2017 Charles He <qiurui@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c am: b1141b6ff0 am: 1cd9e8096f am: 6dfc8d8d4d am: a3c1de7e49 am: 4acf4fabf4 am: 40317127f4 am: 159cd14334 am: 24587d57cf
am: 0fa9328b80

Change-Id: I4fc74296d3da5fef830e9ffe0eedc74bb4fb047b
36cbdef8808fa845fa554eae5c8bcf0bc7785608 15-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Additional documentation about Autofill / WebView security." into oc-dev
0fa9328b80245e6170522bf74dbae6a33122fbcb 15-Aug-2017 Android Build Merger (Role) <android-build-merger@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c am: b1141b6ff0 am: 1cd9e8096f am: 6dfc8d8d4d am: a3c1de7e49 am: 4acf4fabf4 am: 40317127f4 am: 159cd14334 am: 24587d57cf

Change-Id: If5cad5c0f361acda25df4d90de06821d16e689c0
3d141421f8544ec7b23390f4c615240f15b7f83b 15-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Improved WallpaperService.Engine tests" into oc-mr1-dev
40317127f490f8ecf6f8be026259558c88cd3a97 15-Aug-2017 Charles He <qiurui@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c am: b1141b6ff0 am: 1cd9e8096f am: 6dfc8d8d4d am: a3c1de7e49 am: 4acf4fabf4

Change-Id: Iea8871d4f1a491e4571e2152afbf8855bf451478
4acf4fabf40c3e3a7b5cb23d01cab720dda86d31 15-Aug-2017 Charles He <qiurui@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c am: b1141b6ff0 am: 1cd9e8096f am: 6dfc8d8d4d am: a3c1de7e49

Change-Id: Idcc4beaf75e1aba8609aa18ad1850e0796a17741
a3c1de7e492048217c558283d2f679bad7f4a1e8 15-Aug-2017 Charles He <qiurui@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c am: b1141b6ff0 am: 1cd9e8096f am: 6dfc8d8d4d

Change-Id: Ia5ad4b5d36d92caa26fa69951180320848c372e7
b1141b6ff0b1b390839aa4c6e74e99d8c33dacea 15-Aug-2017 Charles He <qiurui@google.com> [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c

Change-Id: Ic72c354aaec594f02567949e294be2c10da47853
416fe954e9f6e714209af0965cc2e912c8e58a1c 14-Aug-2017 Lucas Dupin <dupin@google.com> Improved WallpaperService.Engine tests

Using final variables when possible, also testing if
overlaping invalidation requests will be posted to
the handler.

Bug: 63585249
Test: runtest -x services/tests/servicestests/src/com/android/server/wallpaper/WallpaperServiceTests.java
Change-Id: I01cdbdfd5313e55d7a58c77f705aea0f6f817518
allpaper/WallpaperService.java
303b609eaa8c28c4f36a46ce882b126e9c144aee 01-Aug-2017 Felipe Leme <felipeal@google.com> Additional documentation about Autofill / WebView security.

Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML

Fixes: 64114048
Fixes: 64337380
Fixes: 64125551

Change-Id: I375bb4712af875251fea4f3e572d92165643409a
utofill/AutofillService.java
dedf8f1f49c77ffe252979f70d70c4db5747a33a 10-Aug-2017 Felipe Leme <felipeal@google.com> Fix CustomDescription so it allows multiple transformations per view id.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t
CustomDescriptionTest#applyMultipleTransformationsForSameField_matchFirst
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t
CustomDescriptionTest#applyMultipleTransformationsForSameField_matchSecond

Fixes: 64569686

Change-Id: I88ef848ba193a224b4e8c3391002dc5f0da5508f
utofill/CustomDescription.java
052562c40fcf113ff854556a3ec73170ec9165d6 27-Jul-2017 Felipe Leme <felipeal@google.com> Calls CancellationSignal when onFillRequest() times out.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testCancellationSignalCalledAfterTimeout
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 64034169

Change-Id: I501653405e8244543a4c27f736bacfa23d22e6f7
utofill/AutofillService.java
a5083c40d513184bc84ac39def7303a1424fa4c8 08-Aug-2017 Felipe Leme <felipeal@google.com> CharSequenceTransformation should not change anything when comparision fails.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.CharSequenceTransformationTest#testMismatch
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 64482785

Change-Id: Ia6036e0a1c6f5f084e6b13c7bdd3a9e24be7ac1a
utofill/CharSequenceTransformation.java
utofill/ImageTransformation.java
9d836b6312bcea26b1355b4749808ec880e85c08 09-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Rate limit notifyColorsChanged()" into oc-mr1-dev
be3e4a628583d6705882484c0a10cfdf2d8f90ba 08-Aug-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Minor Autofill changes after API council review." into oc-mr1-dev
67f9d5070a74a0bf34f0335899a96dedcac26c96 05-Aug-2017 Jeff Sharkey <jsharkey@android.com> Fix broken javadocs.

Bug: 64337634
Test: make -j32 doc-comment-check-docs
Change-Id: I20fdd3dcddef09111d35946c41c596c7689effa6
utofill/FillRequest.java
utofill/FillResponse.java
otification/NotificationListenerService.java
65b47650c8df2d5f1cc52d0157e13f22945445ed 20-Jul-2017 Lucas Dupin <dupin@google.com> Rate limit notifyColorsChanged()

Throttle onComputeColors to make sure that a wallpaper
won't affect general system health easily.

Test: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/wallpaper/WallpaperServiceTests.java
Fixes: 63585249
Change-Id: Ib4317c0b4d284d4cd4a640c24ec71b272b8493d0
allpaper/WallpaperService.java
e09e5ef21b703177cad81cfa6f38260b9f347a4b 04-Aug-2017 Lucas Dupin <dupin@google.com> Merge "Multi-user and WallpaperColors" into oc-dr1-dev
22b418448b0d6cbec98b66b90420df80f3bf6cbe 03-Aug-2017 Lucas Dupin <dupin@google.com> Merge "Multi-user and WallpaperColors" into oc-mr1-dev
50ba991655555dfde90149489f6485a0529ba0ac 14-Jul-2017 Lucas Dupin <dupin@google.com> Multi-user and WallpaperColors

Test: set different wallpapers for different users and switch between them.
Test: re-ran cts tests at cts/tests/app/src/android/app/cts/WallpaperManagerTest.java
Change-Id: Ic06d1dc6db26869a2948590863ca9b8ac81c630e
Fixes: 63513694
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
26fb43c034168896b674427463fc40a52ad750cd 14-Jul-2017 Lucas Dupin <dupin@google.com> Multi-user and WallpaperColors

Test: set different wallpapers for different users and switch between them.
Test: re-ran cts tests at cts/tests/app/src/android/app/cts/WallpaperManagerTest.java
Change-Id: Ic06d1dc6db26869a2948590863ca9b8ac81c630e
Merged-In: Ic06d1dc6db26869a2948590863ca9b8ac81c630e
Fixes: 63513694
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
9c4115a56212da458831bc06aea9339c072fa28d 03-Aug-2017 Tarandeep Singh <tarandeep@google.com> Merge "Fix keyboard focus in VR" into oc-dr1-dev
am: 986995d481

Change-Id: I693c1256583dc1081c6402668401c6aab2337d16
986995d481a6ecff1285a05a060b537b64cfe61d 02-Aug-2017 Tarandeep Singh <tarandeep@google.com> Merge "Fix keyboard focus in VR" into oc-dr1-dev
e1cfcf4c4d15417bc912d36d487b4454c19b30fa 11-Jul-2017 Tarandeep Singh <tarandeep@google.com> Fix keyboard focus in VR

Consider this VirtualDisplay (VD) scenario:
HostActivity creates a VD which holds SettingsActivity. When EditText
on SettingsActivity is tapped, it gains focus.
On eventual taps, it loses focus i.e. the Window in VD loses focus and
the host activity in primary display gets the focus instead. This
happens because WM's TaskTapPointerEventListener.onPointerEvent()
is called on the default display only.

Root cause:
1. Tap detector isn't registered for non-default display.
2. Tap detector has no info on which displayId touch was received.
3. InputFlinger doesn't deliver InputMonitor events for
non-default displays (fixed in a separate CL)

Fixing above results in onPointerEvent(MotionEvent) to deliver the
Touch events successfully to VD. We restrict these changes to physical
multi-displays and VR VirtualDisplays (which uses virtual touch device).
[VrManagerService calls WMInternal.setVr2dDisplayId(int)]

In future, displayId should be part of InputEvent. Bug: 64258305

Bug: 62033391
Test: bit FrameworksServicesTests:com.android.server.wm.DisplayContentTests
Change-Id: I3626f4de5aa9bcf905da9abd39f3ab1baefc4c48
allpaper/WallpaperService.java
c7cea5b79e6d0fccfc99fcde767a0076b7516382 02-Aug-2017 Felipe Leme <felipeal@google.com> Minor Autofill changes after API council review.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 64262815
Fixes: 64262816
Fixes: 64263294

Change-Id: I18fa6f24c13233a54a5dae9061c07bcdadfaf4a7
utofill/CustomDescription.java
utofill/RegexValidator.java
utofill/SaveInfo.java
utofill/SimpleRegexValidator.java
d25050e2a41bad0e9ba1358baa84fc215b8c5259 02-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Clarifies how the autofill service should check for signature hashes." into oc-dev am: c8f0fd7076
am: 32d4e30778

Change-Id: I8de50b81273e89298a6276d8b17100c90361380e
32d4e30778213bc0d2cd240e8c18ef3bd65f317b 02-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Clarifies how the autofill service should check for signature hashes." into oc-dev
am: c8f0fd7076

Change-Id: Ida9652bb511ea0aa180e649992a9e5fa6409b2be
c8f0fd7076233fa969ccc523fc5284d50b2c759a 02-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Clarifies how the autofill service should check for signature hashes." into oc-dev
27eb322ed2d04bab3850e05e9a0a5fb08f65026f 02-Aug-2017 Felipe Leme <felipeal@google.com> Merge "Cherry-picked some Autofill Javadoc improvements from master." into oc-dev
am: 6829a1dace

Change-Id: I41dec3cb31e6b523927717950f827f45dadabd8b
2fb64c0b2824c2df00b27f6702fa0030c6e1e71e 31-Jul-2017 Felipe Leme <felipeal@google.com> Clarifies how the autofill service should check for signature hashes.

Test: m update-api

Bug: 64125551
Fixes: 63991811

Change-Id: I1ba66787ef91c0fc5fab20b5e9e9fd47aee46412
utofill/AutofillService.java
33681a94cff6b48bcf82fda1fcb53b8cf7cd38fe 28-Jul-2017 Felipe Leme <felipeal@google.com> Cherry-picked some Autofill Javadoc improvements from master.

Test: m update-api

Bug: 64125551
Bug: 63669555
Bug: 63985284

Merged-in: Iba4817f682670e9fd6d891ae221e1fa415252e99
Change-Id: I82cbb54a522b2cf1dfb11aacc9735c932aa9af90
utofill/FillResponse.java
c0c6ab4ac1500d2e15f1b28e27b0dd469bed1a6c 28-Jul-2017 Felipe Leme <felipeal@google.com> Minor Autofill javadoc fix.

Test: no, thanks!

Bug: 64125551

Change-Id: Iba4817f682670e9fd6d891ae221e1fa415252e99
utofill/FillResponse.java
cb96f3915525b4122e44f325bb477bcc72ff2d40 26-Jul-2017 Felipe Leme <felipeal@google.com> Uses ParceledListSlice to allow larger number of datasets.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testAutofillLargeNumberOfDatasets
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 63669555

Change-Id: If0847da3bafa1bfd80ee8925e17aace82010aec9
utofill/FillResponse.java
e802d18f49c7dcc9cbe77df693c4d4fc3a44da65 27-Jul-2017 Felipe Leme <felipeal@google.com> Merge "Don't show Save UI when values filled by user belong to a dataset." into oc-mr1-dev
d0b18d665ff8a42ccdc46be7a2382c67476c3c7b 25-Jul-2017 Felipe Leme <felipeal@google.com> Don't show Save UI when values filled by user belong to a dataset.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 63068654

Change-Id: Ia9c42d57b0e7c316bfd3c0ee29816db18ac478c1
utofill/Dataset.java
utofill/SaveInfo.java
7635ab0a1b7b91104cef84b5600ae829aa6999d5 25-Jul-2017 Julia Reynolds <juliacr@google.com> Differentiate dnd countdowns/countdowns to an alarm

Test: runtest systemui, manual
Change-Id: I63b6c6b4128c7c3551efc64f54ce3e55ab2de54d
Fixes: 36569568
otification/ZenModeConfig.java
04964fe0697264fec7628ed98e3e8186a3363e8f 21-Jul-2017 Julia Reynolds <juliacr@google.com> Merge "Fix xml loading for managed services" into oc-mr1-dev
95a3528866fcbb41c1ea2e5f7db7442f1101c66a 21-Jul-2017 Albert Chaulk <achaulk@google.com> Merge "Add modified API to send more information to VrCore" into oc-dr1-dev
am: c48e304bbf

Change-Id: I1c93664e2300cb9e234cfbc1c453da30a60e61af
d1bf5f0108acc4bffdc3a611fabcc23a66f3fb84 11-Jul-2017 Julia Reynolds <juliacr@google.com> Fix xml loading for managed services

Noticed while adding a shell cmd to toggle notification assistants,
which is also included

Bug: 62263757
Test: runtest systemui-notification
Change-Id: I9bc0ee857abb8b9f60ab18ad740ca0a3b7d754ff
(cherry picked from commit 88facd4d9ac18630e4cc44db22b88b4ba26e775a)
otification/ZenModeConfig.java
98eabbd68a90d92ec31dce0ed473348a6496db77 20-Jul-2017 Lucas Dupin <dupin@google.com> Unhide invalidateColors API

Live wallpapers should be able to report their colors
to have better integration with O-DR visual framework.

Test: make
Bug: 62490115
Change-Id: Id4a61245087a0c6530f56e474ce258ca9528becc
Fixes: 63585249
allpaper/WallpaperService.java
16d2397e2d3da0e0fcd6e3d1ea14db4fd5e4e246 14-Jul-2017 Albert Chaulk <achaulk@google.com> Add modified API to send more information to VrCore

Currently, null is sent when a 2D intent is running.
Sending the component name and a flag instead allows
VrCore to determine which intent is currently running
and which layers on the display correspond to this
application.

The process ID of the current intent is also sent,
to allow association of buffers to the VR app.

Bug: 63709047, 63115025
Test: manual with prints

Change-Id: I164b577f2c578867fb953d92074ef3d2d31221a1
r/IVrListener.aidl
r/VrListenerService.java
22101ca5a91e36f56b4d7cab2bb8517f679c6c86 18-Jul-2017 Felipe Leme <felipeal@google.com> Don't show a custom description if any transformation fail.

That could result in an inconsistent, confusing UI. For example, if the
successfully description for a credit card was "Exp. date: 04/20", one with a
failure could be "Exp. date: /20" - it's better to not show a custom description
in these cases.

Test: CtsAutoFillServiceTestCases pass
Test: CustomDescriptionTest.failFirstFailAll
Test: CustomDescriptionTest.failSecondFailAll

Bug: 62534917

Change-Id: I6554e3470ead2f84d7ef8715192d863c01ab1190
utofill/CharSequenceTransformation.java
utofill/CustomDescription.java
utofill/ImageTransformation.java
utofill/InternalTransformation.java
906b85371766dd696158557987d9b05dc30583e8 17-Jul-2017 Felipe Leme <felipeal@google.com> Uses Pattern instead of String for new Autofill Save API.

Test: CtsAutoFillServiceTestCases pass
Bug: 62534917

Change-Id: Ic285838465c2aa55e4935cdd8f00c551faa6a972
utofill/CharSequenceTransformation.java
utofill/ImageTransformation.java
utofill/SimpleRegexValidator.java
7fc29dd9311cc36c3eb2a6a05aeed2d39ddcc604 17-Jul-2017 Felipe Leme <felipeal@google.com> Changed SaveInfo so it supports just optional ids.

Test: existing CtsAutoFillServiceTestCases pass
Test: new tests on LoginActivityTest pass
Test: new SaveInfoTest pass

Fixes: 38044993

Change-Id: Iefcf9610b27361585444157616325e9e9a89158f
utofill/ImageTransformation.java
utofill/SaveInfo.java
eb3dca71b5df7fdf6299a3e65eb5d6fe8cb7bcbc 11-Jul-2017 Julia Reynolds <juliacr@google.com> Send less ranking reconsiderations and updates

- NotificationIntrusivenessExtractor does not need to reconsider
ranking for non intrusive notifications
- All adjustments (by group helper and the assistant) have been moved to
extractors so we can selectively send ranking updates instead of always
sending them.

Fixes: 62827235
Test: runtest systemui-notification
Change-Id: I2ea746c3883049abac0752788a3f4c2fa50c8064
otification/Adjustment.java
e74cae8f7c3e6b12f2bf2b75427ee8f5b53eca3c 14-Jul-2017 Charles He <qiurui@google.com> Fix security hole in GateKeeperResponse.

GateKeeperResponse has inconsistent writeToParcel() and
createFromParcel() methods, making it possible for a malicious app to
create a Bundle that changes contents after reserialization. Such
Bundles can be used to execute Intents with system privileges.

This CL changes writeToParcel() to make serialization and
deserialization consistent, thus fixing the issue.

Bug: 62998805
Test: use the debug app (see bug)
Change-Id: Ie1c64172c454c3a4b7a0919eb3454f0e38efcd09
atekeeper/GateKeeperResponse.java
d16aeddbd197701b387dcedf2719b7cd09455bfc 13-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Make CustomDescription safe against crashes"
72c323964cd60cd8a7013d3ce9c1cc1bed0b603f 13-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Verify regex for SimpleRegexVerifier"
3858aa67365ad574ee474edc68e2e82d4d8c6081 12-Jul-2017 Philip P. Moltmann <moltmann@google.com> Make CustomDescription safe against crashes

... And allow users of the public APIs use Transformations.

Test: bit CtsAutoFillServiceTestCases:.CustomDescriptionTest
Bug: 62534917
Change-Id: I6b7b7d5e343e78f2f0381303451e08bb16c5c3e6
utofill/CharSequenceTransformation.java
utofill/CustomDescription.java
utofill/ImageTransformation.java
utofill/InternalTransformation.java
utofill/Transformation.java
f28764d900f0a3abba98e63a3b6220066607eeba 11-Jul-2017 Philip P. Moltmann <moltmann@google.com> Verify regex for SimpleRegexVerifier

Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
--test=android.autofillservice.cts.SimpleRegexValidatorTest
Bug: 62534917
Change-Id: I63a887643bff0f8d584069ee47f091b0edb8684c
utofill/ImageTransformation.java
utofill/SimpleRegexValidator.java
0e3e6f8274b9d4c1c9646a1d39aed6a9f8a6a28d 12-Jul-2017 Philip P. Moltmann <moltmann@google.com> Handle failures in validators

Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
--test=android.autofillservice.cts.ValidatorTest
Bug: 62534917

Change-Id: I3aad06cd2e8b6caf7238e420727aca0cb3703bc5
utofill/InternalValidator.java
utofill/LuhnChecksumValidator.java
utofill/OptionalValidators.java
utofill/RequiredValidators.java
utofill/SaveInfo.java
utofill/SimpleRegexValidator.java
071072f33ece3854c4b2282b1deb9296fec2b7a4 12-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Implement Luhn checksum algo"
4e5ce390399a77d47aa775e9eb7d04b5e8061483 11-Jul-2017 Philip P. Moltmann <moltmann@google.com> Implement Luhn checksum algo

Ignore all non-digits. If only digits should be allowed, the
developer can use a combination of SimpleRegexValidator and
RequiredValidators.

Bug: 62534917
Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
--test=android.autofillservice.cts.LuhnChecksumValidatorTest

Change-Id: I4a7c68a236c3d4cb967f1bc61115df89e584a86d
utofill/LuhnChecksumValidator.java
2a9a771c65e086dd8ef5bea648f6447e084ea81c 11-Jul-2017 Philip P. Moltmann <moltmann@google.com> Stabilize order of options in ImageTransformation

If two options match a the one added first is picked instead of a random
one.

Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
--test=android.autofillservice.cts.ImageTransformationTest

Change-Id: I17d6b93d406fe6aa70646dd0432091aab0ce55c0
utofill/ImageTransformation.java
99f0e0ef1e5be661a3f18c4eb7acee133dea2f8c 11-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Verify regex on ImageTransformation"
de78fabb740063fad2a502c07b6482cba79ce0a6 11-Jul-2017 Philip P. Moltmann <moltmann@google.com> Verify regex on ImageTransformation

Also change the constructor of the Builder of this class

Bug: 62534917
Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
Change-Id: Ie54f3a1d4b3a0ecd25945d3deafb4858423f926e
utofill/ImageTransformation.java
utofill/ValueFinder.java
ebbe2d4899f758e13e1021c0ab1d3ed457861a23 10-Jul-2017 Philip P. Moltmann <moltmann@google.com> Verify regex on CharSequenceTransformation

... Also
- change the constructor of the Builder of this class
- Do not crash if the subsitutions for the regexes are invalid

Change-Id: I965d5830f4932eb40ec22d7fa308815955920a99
Bug: 62534917
Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
utofill/CharSequenceTransformation.java
utofill/ValueFinder.java
de295549d194916a049b2c875fcc1abf0f1a91fa 10-Jul-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Hide some systemapi methods"
7ca33079fda388dd3bd81819b280e578e5d6b38b 29-Jun-2017 Julia Reynolds <juliacr@google.com> Hide some systemapi methods

Test: make
Change-Id: I0234ca06f68f0a25e1923e171cb6ef19d848aecd
Fixes: 62342239
Fixes: 62264035
otification/NotificationListenerService.java
0e5d5b1c8cbf0e0bcf06f8d3e1ad1b467a20a1aa 14-Jun-2017 Andrew Scull <ascull@google.com> PDBS: add package check for getMaximumDataBlockSize()

This method is only useful to the package that writes data to the block
so this applies the same security check as the write() method.

getDataBlockSize()'s security check was only relaxed to use a permission
as it is used by other system apps to determine whether the block
contains data and hence is in use (see ag/593371).

Fix: 62348164
Test: add a Google account to the device causing gmscore to call the
method
Change-Id: I7e71ea236899bf2e4df7cb26ae285b414e9e6565
ersistentdata/PersistentDataBlockManager.java
ee39d54a8d6ea1d6515191ed5fef549fecaaacee 29-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Initial implementation of the new Save APIs."
979013d027d828f404e71f48b88403e562ccbc7b 22-Jun-2017 Felipe Leme <felipeal@google.com> Initial implementation of the new Save APIs.

Test: manual verification with sample app (CTS tests coming later)

Bug: 62534917

Change-Id: I085a9c933bb5e8316d673976e059e13abd7098e5
utofill/CharSequenceTransformation.java
utofill/CustomDescription.java
utofill/ImageTransformation.java
utofill/InternalTransformation.java
utofill/InternalValidator.java
utofill/LuhnChecksumValidator.java
utofill/OptionalValidators.java
utofill/RequiredValidators.java
utofill/SaveInfo.java
utofill/SimpleRegexValidator.java
utofill/Transformation.java
utofill/Validator.java
utofill/Validators.java
utofill/ValueFinder.java
7b69a86b02e1e4b469181a8ad286f473df8b6352 17-Jun-2017 Jeff Davidson <jpd@google.com> Add EuiccManager#retainSubscriptionsOnFactoryReset API.

By default, all subscriptions are wiped on first boot after a factory
reset. This ensures that if data is wiped outside of userspace (e.g.
in fastboot/recovery), the profiles are wiped, as there's no way to
offer this option to users in those modes - the radio isn't available
for us to access the eUICC.

This API provides a way to bypass this wipe if the user opts to retain
the policies for a wipe done from userspace (e.g. by unchecking the
"Wipe eUICC" checkbox in platform settings before wiping). We tell the
LPA to note this and skip the wipe on the ensuing factory reset.

Change-Id: I2fe472417497e28b043841a5aa2dc9efa45ebbff
Test: TreeHugger
Fixes: 62681577
uicc/EuiccService.java
uicc/IEuiccService.aidl
uicc/IRetainSubscriptionsForFactoryResetCallback.aidl
776220d02911681e6017172df2defdb48bb862a9 27-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Pass calling package to resolution UI." into oc-dr1-dev
91d763f1b59a3adbc990f57b08108fc9fc88a82c 23-Jun-2017 Felipe Leme <felipeal@google.com> Improved documentation for AutofillService package:
am: 2ef19c1d73

Change-Id: I67d6649d4acb84ebb598c1ebceb3c3ed58cfd0c0
2ef19c1d73f89ca4718b5a8f0c2e7221621e844f 05-Jun-2017 Felipe Leme <felipeal@google.com> Improved documentation for AutofillService package:

- Moved (and expanded) overall documentation from FillResponse to
AutofillService.
- Improved SaveInfo documentation.
- Improved FillRequest documentation.
- Improved Dataset documentation.

Bug: 37567048
Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML

Change-Id: I157893deac06a5ed5e1cb7fd082da485f227b9ee
utofill/AutofillService.java
utofill/Dataset.java
utofill/FillContext.java
utofill/FillRequest.java
utofill/FillResponse.java
utofill/SaveInfo.java
a4d103d4802aac7e38ed29e1bba88bc3cb738b43 21-Jun-2017 Felipe Leme <felipeal@google.com> Merge changes from topics 'bug_62802026_take_2', 'bug_62802026' into oc-dev
am: 4f7fd183eb

Change-Id: Ibd7aebe46d1bb419ca33f8f38999fa9ab0d981ff
9cd1c528671d3adfbe6503f9ca942f6964d1b181 21-Jun-2017 Felipe Leme <felipeal@google.com> Fixed how FillEventHistory is reset and clarified javadoc.
am: 2e30c6f371

Change-Id: I55eb6f4a11e28ef2a8171c62848eb2b067f05ba1
4f7fd183ebaec60256d38fa4633a09f1a4afc5a5 21-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topics 'bug_62802026_take_2', 'bug_62802026' into oc-dev

* changes:
Don't add FillEventHistory events to the wrong session.
Fixed how FillEventHistory is reset and clarified javadoc.
d013bcea9713d178627cc1d3e8a0f291ccbcd293 21-Jun-2017 Felipe Leme <felipeal@google.com> Don't add FillEventHistory events to the wrong session.

The AutofillSession.getFillEventHistory() method returns only the event history
for the last onFillRequest(). In the scenario where the user switches
activities and the server has multiple sessions open, only the events for the
last session should be recorded.

Test: existing CtsAutoFillServiceTestCases pass
Test: LoginActivityTest.checkFillSelectionFromPreviousSessionIsDiscarded

Fixes: 62802026

Change-Id: I447ed77c2167095867b35d616b5cf2ae43aa28db
utofill/FillEventHistory.java
284ec6eec7ad01768295187aa2bbfc33283c4f14 21-Jun-2017 Felipe Leme <felipeal@google.com> Merge "Removed deprecated, hidden method." into oc-dev
am: 17efecf48f

Change-Id: Id79feb953db68214e848e9bb3f8f3aaec6d56824
2e30c6f371be6211f1fa2b2257084df24a535795 20-Jun-2017 Felipe Leme <felipeal@google.com> Fixed how FillEventHistory is reset and clarified javadoc.

Test: existing CtsAutoFillServiceTestCases pass
Test: checkFillSelectionIsResetAfterReturningNull()
Test: checkFillSelectionIsResetAfterReturningError()
Test: checkFillSelectionIsResetAfterTimeout()

Bug: 62802026

Change-Id: I389d95fc13c08f1056960e5f67e131c8dc306401
utofill/AutofillService.java
utofill/FillEventHistory.java
bce4b7f1273f1d7108ed6b649320b98b73023b15 20-Jun-2017 Felipe Leme <felipeal@google.com> Removed deprecated, hidden method.

Test: existing CtsAutoFillServiceTestCases pass
Bug: 37563972

Change-Id: I10c5a2b16b422694d72b3ccaf6629d50247c7f49
utofill/AutofillService.java
51ed7f4e6b751b8423aca63565a6b486453cbb8e 20-Jun-2017 Felipe Leme <felipeal@google.com> Merge "Fixed updateAutofillValue() when mText is not set." into oc-dev
am: 4eaba84065

Change-Id: I7603a791f8c149799a0adf9e0fe735483ce1be1a
266752317b7752394e39618f6fe1ad2829e919d8 19-Jun-2017 Felipe Leme <felipeal@google.com> Fixed updateAutofillValue() when mText is not set.

updateAutofillValue() was crashing some apps when the mText was not set at the
time it was called. One solution would be to not set mText at all - since the
Autofill Service should rely only on getAutofillValue() - but that could break
existing services.

Hence, a safer solution is to set that field if it's null.

Test: existing CtsAutoFillServiceTestCases tests pass
Test: manual verification using Fly Delta app

Fixes: 62751039

Change-Id: I91a8e0ed5db4148f5eb5729b8e254aa3531f15e4
utofill/AutofillService.java
1c5cb925b8a0e492e13fa5d314c23b533ddb2396 16-Jun-2017 Felipe Leme <felipeal@google.com> Merge "Use an optimized findViewNodeByAutofillId(id) to get just one node." into oc-dev
am: a89414962d

Change-Id: I70d76618c929bdfeee715909c70a678fbc5f4a3e
a89414962d0ea123b5e87be245bbcaf08de647f3 16-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Use an optimized findViewNodeByAutofillId(id) to get just one node." into oc-dev
79c7a85d6059307ec56f19006e8c5cabb2f577ec 16-Jun-2017 Jeff Davidson <jpd@google.com> Merge "Allow EuiccService IPCs to happen in parallel." into oc-dr1-dev
04d2ec59e8ba742917f96b0cd3da0d4151cb80c8 16-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "WallpaperColors refactor" into oc-dr1-dev
bc8386db5bb481d472540dfc7cb24a7ee873c777 16-Jun-2017 Felipe Leme <felipeal@google.com> Merge "Throw IAE when service add null AutofillIds on SaveInfo methods." into oc-dev
am: 6cde68752c

Change-Id: I9efd96bcd649bd23db28136aa4afca16a677e9ea
94b56207a45f0112339833b3d76662e583a51e73 16-Jun-2017 Felipe Leme <felipeal@google.com> Use an optimized findViewNodeByAutofillId(id) to get just one node.

Session was using findViewNodesByAutofillIds(ids) before, which not only was
not optimal, but error prone (for example, it could return a non-empty array
with an empty value).

Test: CtsAutoFillServiceTestCases pass
Fixes: 62532979

Change-Id: If984f1263cc3f2aac1d1e098687fe02d73c55211
utofill/FillContext.java
84b89d9d59797483a7e4a1bf82f3819d81e696e9 09-May-2017 Lucas Dupin <dupin@google.com> WallpaperColors refactor

Hiding color extraction into WallpaperColors.
This enables us to create WallpaperColors from a a Bitmap
or Drawable.

Fixes: 62197187
Fixes: 62490115
Test: runtest --path cts/tests/app/src/android/app/cts/WallpaperColorsTest.java
Change-Id: I614cfa205e02b551a141642eac6de21251c3bff6
allpaper/WallpaperService.java
1133cf2b8acab943f9a4a157b116d79d2eb4d024 16-Jun-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Hide WallpaperService.Engine colors API." into oc-dr1-dev
b4c67ec3c85166a579612a563fc234ff326baedd 14-Jun-2017 Jeff Davidson <jpd@google.com> Pass calling package to resolution UI.

The calling package is important for the UI to be able to tell the
user who is asking to perform the operation which needs consent. For
example, it should be able to tell the user which carrier app is
asking to download a profile.

Bug: 38049463
Test: TreeHugger + E2E verification
Change-Id: I890f811405cb05672e1271f092ddca60501e7ddc
uicc/EuiccService.java
18d0ef70b09ee17523056849483e4a182faddf98 16-Jun-2017 Felipe Leme <felipeal@google.com> Throw IAE when service add null AutofillIds on SaveInfo methods.

Test: existing CtsAutoFillServiceTestCases pass
Test: manual verification using Contacts app
Test: manual verification adding a CTS test case that crashes the app, but such
test cannot be commit because once the issue is fixed, it crashes the
service (the right way to test this fix is through unit tests against
exceptional conditions, but we don't support those on Autofill yet).

Fixes: 62649290

Change-Id: I8fc01fa929270219cd40035ff02eaf0dda5ecbfa
utofill/SaveInfo.java
707c372f09bcf2d4b7ee662f5dfe354f8aca1054 12-Jun-2017 Jeff Davidson <jpd@google.com> Allow EuiccService IPCs to happen in parallel.

The (currently) undocumented behavior of oneway AIDLs is to serialize
IPCs made from the same client IBinder object. This is undesirable in
EuiccService as we want to respond to short-lived calls (like listing
subscriptions or getting the EID) while long-lived calls (like
download) are in progress. Introduce our own thread pool to work
around this behavior.

This also fixes a bug where uncaught exceptions thrown in the
implementation of an EuiccService method would be logged but never
trigger a callback on the client. Such exceptions now correctly crash
the app and trigger error callbacks in any active callers.

Bug: 62535655
Test: TreeHugger + verified subscription list during a download
Change-Id: I8b75af7fdc72117a163d81f7bf1447f6cc12ec6d
uicc/EuiccService.java
2b0dab0da71ef8255e7697f408c2b0b6cbb16a68 15-Jun-2017 Lucas Dupin <dupin@google.com> Hide WallpaperService.Engine colors API.

All apps that need it are bundled in DR.
We need to unhide it for MR1.

Test: make
Bug: 62490115
Change-Id: I58d0a020ec7b1af8cb2659d6957de4bf4d4fa596
allpaper/WallpaperService.java
83f8bc81be65cb09720c6d8dac7717d4652cd931 15-May-2017 Jeff Davidson <jpd@google.com> eUICC API error code cleanup.

-Remove result classes in cases that a simple int will do. Split the
int error code space (now shared across all calls) into two parts -
predefined errors (0 or negative) and custom errors (positive).

-Replace "generic error" with "error" in naming.

-Remove detailed code from any result returned by the LPA. There is
still a detailed code in the platform API, which is equal to the
result code returned by the LPA.

Fixes: 38206601
Test: TreeHugger
Change-Id: I304081db2127a22d6dd67b6494b4f3279614d19c
uicc/DeleteResult.aidl
uicc/DeleteResult.java
uicc/DownloadResult.aidl
uicc/DownloadResult.java
uicc/EraseResult.aidl
uicc/EraseResult.java
uicc/EuiccService.java
uicc/GetDefaultDownloadableSubscriptionListResult.java
uicc/GetDownloadableSubscriptionMetadataResult.java
uicc/GetEuiccProfileInfoListResult.java
uicc/IDeleteSubscriptionCallback.aidl
uicc/IDownloadSubscriptionCallback.aidl
uicc/IEraseSubscriptionsCallback.aidl
uicc/ISwitchToSubscriptionCallback.aidl
uicc/IUpdateSubscriptionNicknameCallback.aidl
uicc/SwitchResult.aidl
uicc/SwitchResult.java
uicc/UpdateNicknameResult.aidl
uicc/UpdateNicknameResult.java
5148d9fe8153da418dfe58919043e8daf1df195d 12-Jun-2017 Felipe Leme <felipeal@google.com> Merge "Removed deprecated setExtras() method." into oc-dev
am: 7c41ddb975

Change-Id: Id74b4becd0f26d185cad3ecbe539aaa69f7ac89e
d52611258ed141888d54a8a43acb88f0a412ebb7 10-Jun-2017 Felipe Leme <felipeal@google.com> Removed deprecated setExtras() method.

Bug: 37563972
Test: CtsAutoFillServiceTestCases pass

Change-Id: I7fef7c81267dad9097c711dbba849adf9d6b1cc5
utofill/FillResponse.java
f9a9bbf430c492d47b5c9ed98f2a2a55574a3a4c 07-Jun-2017 Felipe Leme <felipeal@google.com> Merge "Use initial value on save when value didn't change." into oc-dev am: 2e723982d5
am: 08365011a2

Change-Id: I38b2e8096b7fe43a294afe400af093b49616335d
2e723982d525bc6e7516eb1aecdfc861660f1f7b 07-Jun-2017 Felipe Leme <felipeal@google.com> Merge "Use initial value on save when value didn't change." into oc-dev
e8f68080795374c4c3ee25a068990d602e63320f 06-Jun-2017 Felipe Leme <felipeal@google.com> Use initial value on save when value didn't change.

Otherwise, it will fail to call onSaveRequest() in scenarios where the service
required a field that was pre-populated for the app. For example, when the
service requires both a username and password, the app pre-populates the
username, and the user fills the password.

Test: new LoginActivityTest.testSaveOnlyTwoRequiredFieldsOnePrefilled() pass
Test: existing CtsAutoFillServiceTestCases pass

Bug: 62270740

Change-Id: Idbb11a8c2dab6741c18549c55dfdb71b483c2447
utofill/FillContext.java
ec68b46bc85b2317053da7e2933876fc6e51ac2f 06-Jun-2017 Jeff Sharkey <jsharkey@google.com> Merge "Annotate @SystemApi with required permissions." into oc-dev am: c1406978a4
am: 7a2e4a8486

Change-Id: Ib629e25dbf047c110feaf03e4ff744b5c6df9aeb
d86b8fea43ebb6e5c31691b44d8ceb0d8d3c9072 03-Jun-2017 Jeff Sharkey <jsharkey@android.com> Annotate @SystemApi with required permissions.

Most @SystemApi methods should be protected with system (or higher)
permissions, so annotate common methods with @RequiresPermission to
make automatic verification easier.

Verification is really only relevant when calling into system
services (where permissions checking can happen on the other side of
a Binder call), so annotate managers with the new @SystemService
annotation, which is now automatically documented.

This is purely a docs change; no logic changes are being made.

Test: make -j32 update-api && make -j32 offline-sdk-docs
Bug: 62263906
Change-Id: I2554227202d84465676aa4ab0dd336b5c45fc651
emlock/OemLockManager.java
ersistentdata/PersistentDataBlockManager.java
5a406e996ca3750f961531d414450c39b6b41f2d 03-Jun-2017 Chris Wren <cwren@google.com> Merge "add channel and group tags to the notificaiton logs" into oc-dev am: 76e76a5c26
am: 6b88afda65

Change-Id: I840c89e34b00cf505e50897bc7ba433f37a67dff
b39217972e665c6c508639c7765134bac8391076 01-Jun-2017 Chris Wren <cwren@google.com> add channel and group tags to the notificaiton logs

Change-Id: Icf029e42fca46262c9d9f8ff63f26de098f888bf
Fixes: 37714086
Test: runtest systemui-notification
otification/StatusBarNotification.java
a9861756b5a79e23b317ef7a89a504a68ac61e34 02-Jun-2017 Winson Chung <winsonc@google.com> Merge "Prevent showing voice session when it is already queued to be hidden." into oc-dev am: c672cb5ed9
am: 6d9ea8ec97

Change-Id: I9c0768835c6932c3ec4c55a26fdd63b0d5e6bac5
fc3ec4c5e689e4d64f0c24d42a3b4b31ee4621c4 02-Jun-2017 Winson Chung <winsonc@google.com> Prevent showing voice session when it is already queued to be hidden.

- It is possible for the session to be requested to be hidden before it
gets the message to be shown and completes showing. This leads to an
inconsistency where the voice interaction service implementation will be
in a different state than the system for the session. Instead, we can
cancel any pending show messages, and also clean up the pending show
callback list immediately when the session is hidden.
- Also fixing up some error message codes when starting the assistant
activity.

Bug: 38379130
Test: android.server.cts.ActivityManagerAssistantStackTests
Test: CtsVoiceInteractionTestCases
Test: CtsAlarmClockTestCases
Change-Id: I0d0e9c024367a47bda82d6a29ca89e18b7d69527
oice/VoiceInteractionSession.java
7374d3a4bca6bfbf7da1ef5dbf0db9f35f0c8315 31-Mar-2017 Adrian Roos <roosa@google.com> Credential FRP: Add implementation

- Adds a facility to store a credential handle that survives factory reset
- Adds a method to KeyguardManager for verifying the stored credential for SetupWizard
- Dark launches persisting the primary user's credential as the FRP credential (behind a default-off flag)

Future work:
- Use a separate GK handle / synthetic password for the FRP credential
- Enroll the FRP credential in verifyCredential for the upgrade case

Bug: 36814845
Test: runtest -x core/tests/coretests/src/com/android/internal/widget/LockPatternUtilsTest.java && runtest -x services/tests/servicestests/src/com/android/server/LockSettingsStorageTests.java && runtest -x services/tests/servicestests/src/com/android/server/SyntheticPasswordTests.java
Change-Id: Ia739408c5ecb169e5f09670cd9ceaa7febc2b1cc
atekeeper/IGateKeeperService.aidl
ersistentdata/IPersistentDataBlockService.aidl
91c3d07fd9c75258a47fb25c59bc0cd5d2b638a4 12-Apr-2017 Jeff Davidson <jpd@google.com> Implement remaining core eUICC APIs.

Includes:

-getDefaultDownloadableSubscriptionList, which returns a list of
default subscriptions available for the device.
-getEuiccInfo, which returns an EuiccInfo object containing
non-sensitive information about the eUICC device.
-deleteSubscription, to delete a subscription.
-switchToSubscription, to switch to (or away from) a subscription.
-updateSubscriptionNickname, to update the nickname of a subscription
which is saved to the eUICC.
-eraseSubscriptions, to factory reset the eUICC.
-Settings.Global#DEFAULT_SM_DP_PLUS, a default SM-DP+ server which is
used to query for default subscriptions in
getDefaultDownloadableSubscriptionList.

These APIs follow the template of the APIs which have already been
implemented.

This completes the baseline implementation as designed; any additional
APIs or tweaks to the APIs will be tracked as separate bugs.

Fixes: 33075886
Test: Build/boot
Change-Id: I8057757c874f94e0c816af1ca071d656c8f145b9
uicc/DeleteResult.aidl
uicc/DeleteResult.java
uicc/DownloadResult.java
uicc/EraseResult.aidl
uicc/EraseResult.java
uicc/EuiccService.java
uicc/GetDefaultDownloadableSubscriptionListResult.aidl
uicc/GetDefaultDownloadableSubscriptionListResult.java
uicc/GetDownloadableSubscriptionMetadataResult.java
uicc/IDeleteSubscriptionCallback.aidl
uicc/IEraseSubscriptionsCallback.aidl
uicc/IEuiccService.aidl
uicc/IGetDefaultDownloadableSubscriptionListCallback.aidl
uicc/IGetEuiccInfoCallback.aidl
uicc/ISwitchToSubscriptionCallback.aidl
uicc/IUpdateSubscriptionNicknameCallback.aidl
uicc/SwitchResult.aidl
uicc/SwitchResult.java
uicc/UpdateNicknameResult.aidl
uicc/UpdateNicknameResult.java
d02731ffff9b8eb9b604377f50b2c43a9c753c2e 09-Apr-2017 Jeff Davidson <jpd@google.com> Define APIs for listing embedded subscriptions.

Two new APIs will list all embedded subscriptions along with any
active ones. One API requires the ability to read phone state and
returns all subscriptions. The other requires no special permissions
but will only return those subscriptions which the caller may manage
according to their metadata.

A list result from the LPA includes whether the current eUICC is
removable. If true, subscriptions in the list are considered
transient and always removed upon the next list update (i.e. SIM card
state change) unless that update includes the subscription. Otherwise,
they will be retained across future list operations for which the
current eUICC is removable. This allows callers to retain knowledge
about available embedded subscriptions on an inactive but still
accessible eUICC, as long as that eUICC is permanent.

The LPA may request a refresh of the list at any time; this is
intended to be used of the list or metadata is updated through a
non-API operation, e.g. a server-initiated metadata update. For
operations driven through a platform API, the list will be refreshed
automatically.

Bug: 33075886
Test: TreeHugger
Change-Id: I1887cbca835c304b9eb285fd972c7c8eaffa6e1d
uicc/EuiccProfileInfo.java
uicc/EuiccService.java
uicc/GetEuiccProfileInfoListResult.aidl
uicc/GetEuiccProfileInfoListResult.java
uicc/IEuiccService.aidl
uicc/IGetEuiccProfileInfoListCallback.aidl
321a829b4b2cb56237edf707ed448f939747f9c9 12-May-2017 Felipe Leme <felipeal@google.com> Merge "Removed deprecated APIs." into oc-dev am: 4b91fe8699
am: 3eee11cb4d

Change-Id: I39859572bfd0b8e34d02ad96147364e0f4ce2ee5
73fedacfebcccd54f2c36ff7c8eb9929e8ce8455 12-May-2017 Felipe Leme <felipeal@google.com> Removed deprecated APIs.

Test: CtsAutoFillServiceTestCases pass
Test: manual verification with existing service

Bug: 37563972

Change-Id: Ibea2810f9230f06e59d2d81e4ba853de54987956
utofill/AutofillService.java
utofill/SaveInfo.java
eb013ab31d7bb155345f6d93ce44d38d1358c381 11-May-2017 Philip P. Moltmann <moltmann@google.com> Merge "Speed up structure update before OnFillRequest" into oc-dev am: 6ab00addb1
am: fc89e4fab1

Change-Id: Ie0b0674a5c415858ae0c3332761682597a0f78af
cc9089817d27f55810eafebad5e1834c0b7892b6 11-May-2017 Ruben Brunk <rubenbrunk@google.com> Merge "Fix VR component enforcement for "2D in 3D" apps." into oc-dev am: 4d73fd5765
am: dbe6a24331

Change-Id: I7de9452a95aebf7a658d9d0552426146d1bf8e73
6ab00addb18ab2950edb74e1510cc44646f55ff0 11-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Speed up structure update before OnFillRequest" into oc-dev
22567d3415c88b2d054a1540dd868e60d274aac8 09-May-2017 Philip P. Moltmann <moltmann@google.com> Speed up structure update before OnFillRequest

We now
- cache AutofillId -> ViewNode
- look for all AutofillIds at the same time (instead of one by one)

Bug: 37997043
Test: CtsAutoFillServiceTestCases
Change-Id: I094468ad885eed0cc506b4b62ff09c4af48570ff
utofill/FillContext.java
4d73fd576501f63d0da7b5a5a980550d9cddcfe3 10-May-2017 Ruben Brunk <rubenbrunk@google.com> Merge "Fix VR component enforcement for "2D in 3D" apps." into oc-dev
2b3385ab9dae053dadc128bd8bcebbac8b47afec 10-May-2017 Svetoslav Ganov <svetoslavganov@google.com> Merge "Allow null fill values to support authentication case" into oc-dev am: 90bcc1c8bc
am: 0e4f1bab09

Change-Id: I4f95cb012fd5d8b96c2beb097aa3b09c8c557b74
a9379d0b44ca1f68a0036d2b65218e17fa348514 10-May-2017 Svetoslav Ganov <svetoslavganov@google.com> Allow null fill values to support authentication case

If a dataset needs to be authenticated the fill service
may not have the values but needs to tell the system for
which fields to show the fill UI. We now allow passing
a null value to mean the view is a part of the dataset
semantically but its value should remain unchanged.

If a dataset has no values, i.e. the related autofill ids
are mapped to null, we cannot properly filter. In this case
we always match such items regardless what the user typed.

While at this improved accessibility support for filtering
to announce when the number of items being filtered changes.

Also while at this allowed a dataset authentication to return
a response which replaces the current response and refreshes
the UI. Matching datasets with null values to any text plus
allowing a response to be returned from a dataset auth enables
the use case where there is always "Import" item at the
end of the list which when clicked can show arbitrarily more
data entries associated to other apps.

Another change is that we now provide the client state
bundle on both request and dataset auth.

Finally, this change gets rid of dataset waiting auth and
response waiting auth concepts since the reference to the
response and the dataset is piped with the auth request.

Fixed a bug where the width of the autofill UI was not
properly measured by going over all items in the adapter.
Now we measure enough height to fit the first three and the
width id the width of the widest item in the adapter.

Test: Added LoginActivityTest#testDatasetAuthTwoFieldsReplaceResponse
Added LoginActivityTest#testDatasetAuthTwoFieldsNoValues
Added LiginActivityTest#filterTextNullValuesAlwaysMatched
All autofill CTS tests pass

bug:37724701
bug:37424539

Change-Id: Ic19e5d7cbdbb7d110c9e7da0ad60b540cbf1aecf
utofill/Dataset.java
utofill/FillResponse.java
d75ff5f2e85e04e32eae691a92cd7724c0a0b934 10-May-2017 Jeff Sharkey <jsharkey@google.com> Merge "Fix broken SystemApi docs." into oc-dev am: bbc764e83a
am: 43c327b4f2

Change-Id: Ic2e3b8ea13551e211a3f643de63900c9921eb931
bbc764e83af47a09f69a378eefdbd2c500c9889f 10-May-2017 Jeff Sharkey <jsharkey@google.com> Merge "Fix broken SystemApi docs." into oc-dev
412aa37fea4bfbb2878ba26e5f0708b003146671 09-May-2017 Jeff Sharkey <jsharkey@android.com> Fix broken SystemApi docs.

These broken docs were causing the docs build to completely fail.

Test: make -j32 online-system-api-sdk-docs
Bug: 38164929
Change-Id: I7f5fd4922e20e1a42af953f86f3c652655bc9192
rust/TrustAgentService.java
764b7370adc25e53b6fb9412f1f4822f95fc305f 09-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add API for querying if a given keyphrase/locale is supported for AOHD."
bf8288ce341cef578752aab6916f86519eefce44 08-May-2017 Chris Thornton <thorntonc@google.com> Add API for querying if a given keyphrase/locale is supported for AOHD.

Test: Use test VoiceInteraction app to verify function behaves as
expected, and no longer crashes in the framework if you try to use a
AOHD with a null KeyphraseEnrollmentMetaData object.

Change-Id: I12923b8ebf37e6de9be336b4397c24679c86fff8
oice/VoiceInteractionService.java
64775de93df5142ca59dea0d2d4b4ad4a2fed775 08-May-2017 Felipe Leme <felipeal@google.com> Merge "Fixed scenario where an authentication response has no dataset." into oc-dev am: 1c38d29482
am: 98333b84a2

Change-Id: I166b085c41d06c104080b8489a7111f527a12081
1c38d29482f1c733a595fcfbeeafecda775f30ad 08-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed scenario where an authentication response has no dataset." into oc-dev
57c32d93f61739eebf2dfc2b0c360da50e456816 08-May-2017 Daniel Nicoara <dnicoara@google.com> Merge "Remove controller connection API" into oc-dev am: daefe1dcc7
am: 41950bc2c6

Change-Id: I48855908fe4fc4c284bc84b0d99bae5a82099c5d
daefe1dcc7c372d6982bdc9e592c996453022a22 08-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Remove controller connection API" into oc-dev
fd75ecb21f1fd32a4ddcb24c01ea1b31d4e6bae3 07-May-2017 Svet Ganov <svetoslavganov@google.com> Merge "Add call super" into oc-dev am: a41a968f10
am: c13d648d4b

Change-Id: I93f57d5bfeaad9c94f6b7460734125cc259624b0
ecfa58a1133a3bf2ab7909662771ae7be72ef285 06-May-2017 Svet Ganov <svetoslavganov@google.com> Add call super

Test: manual

bug:37775067

Change-Id: I50a50f1fbdb7e9c087c72ad0be3b767aeab9572a
utofill/AutofillService.java
8fd057532783fda6f5187431ed2afac72d3bb0e8 05-May-2017 Felipe Leme <felipeal@google.com> Fixed scenario where an authentication response has no dataset.

Also use getUiForShowing() on all relevant places, and added missing
SaveDataType value.

Test: LoginActivityTest.testFillResponseAuthServiceHasNoData()
Test: manual verification

Fixes: 37711385
Fixes: 38009452

Change-Id: Id69c831f96fb9ac35d1f2d86cfd41e76428c776e
utofill/SaveInfo.java
666505ec351712872800fe80a8a620183c3ead1b 05-May-2017 Ruben Brunk <rubenbrunk@google.com> Fix VR component enforcement for "2D in 3D" apps.

Bug: 38004624

Test: Launch 2D in 3D application, check that null is delivered
VrListenerService#onCurrentVrActivityChanged.

Change-Id: I8ecb3d2fd4fa686ec43509852f4bc5f7d11d665c
r/VrListenerService.java
1336a806f9d513dd4a16c089305dc440486813e3 21-Apr-2017 Daniel Nicoara <dnicoara@google.com> Remove controller connection API

No longer need the proxy since VR Window Manager is in VrCore.

Bug: 36506799, 37542947
Test: Compiled and ran in VR on device.
Change-Id: Id5b5f34a1ad2b6da263527463d63777d40f18085
r/IVrManager.aidl
60df13e750ff65c583f66460dccfc817f96e7b19 04-May-2017 Karthik Ravi Shankar <karthikrs@google.com> Merge "Rename CompatibilityDisplay to Vr2dDisplay" into oc-dev am: 1d01f9cf67
am: c4d7248cdd

Change-Id: I8714be5933827c015f1446d5231f5c1f704b53c3
2b9aaedf6310694de31301659ce604ff195b32ee 01-May-2017 Karthik Ravi Shankar <karthikrs@google.com> Rename CompatibilityDisplay to Vr2dDisplay

CompatibilityDisplay used for displaying 2D activities in Vr world. This
is confusing in more than one way. To clarify what it really means,
rename it to Vr2dDisplay.

Changes in this CL -

- /s/CompatibilityDisplay/Vr2dDisplay
- /s/Compatibility/Vr2d - in CompatibilityDisplay context.

Bug: 37851944
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test
CtsServicesHostTestCases android.server.cts.ActivityManagerDisplayTests
passes on Marlin.

Change-Id: I0a442302fa9d0f48bbd0c01a7766b94369e04386
Signed-off-by: Karthik Ravi Shankar <karthikrs@google.com>
r/IVrManager.aidl
e82ea39a51cb2080f66a0c8e7862b1cad4957c5b 02-May-2017 Felipe Leme <felipeal@google.com> Merge "Removed deprecated setAuthentication() method that didn't take ids." into oc-dev am: 136a48e36a
am: 68eecb37d8

Change-Id: If40b81d68913a162f77581b09932647846c992c1
136a48e36ab47feb35263f281a4e67bc850116ea 02-May-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed deprecated setAuthentication() method that didn't take ids." into oc-dev
a03c9d1640b78c15c2dcf5ab0238ed8751ac10a9 01-May-2017 Jeff Sharkey <jsharkey@google.com> Merge "Updates based on API council guidance." into oc-dev am: 3ba7117164
am: e13d60764c

Change-Id: Ib0a727b11cc24c20d10adf9df85df100f603a87f
c2430f3c4d6e3b996917f57c8afb0b00b5bef45b 01-May-2017 Felipe Leme <felipeal@google.com> Removed deprecated setAuthentication() method that didn't take ids.

Such method would cause the AutofillUi to show on all fields, now it only
shows in the fields the service is interested on.

This doesn't solve FillResponse auth on multiple partition, but that will
come soon...

Bug: 37424539
Test: removed hack from testFillResponseAuthJustOneField()
Test: CtsAutoFillServiceTestCases pass

Change-Id: Id97dddfb9fc1630cd6bac96b9bae9d4a2986dd6d
utofill/FillResponse.java
000ce805050f0bdbf485464b84eb2c08bca5ad72 29-Apr-2017 Jeff Sharkey <jsharkey@android.com> Updates based on API council guidance.

Test: builds, boots
Change-Id: I223faf55c1e1b4d81d11b4c8b2d93ccd131c969b
Fixes: 37775662
Fixes: 37748635
Fixes: 37673408
Fixes: 37672564
Fixes: 37672218
Fixes: 37638323
Fixes: 37637423
utofill/AutofillService.java
utofill/FillRequest.java
25fdc90020d57d9edd3709ce4338410695afada0 29-Apr-2017 Jeff Sharkey <jsharkey@google.com> Merge "Respond to API council feedback." into oc-dev am: d275dc83be
am: 858fd1bf47

Change-Id: Ie58915ab6882725ac030a024a09b719f7f9db249
1a74942fbfa36bf62013b51d8ad9fb4c0e44c6f4 28-Apr-2017 Jeff Sharkey <jsharkey@android.com> Respond to API council feedback.

Test: builds
Bug: 37752002
Change-Id: I7ae1699c4c5e1a098d16465c41fb41510478b678
uicksettings/TileService.java
02adf09e5b59a2570cc8d34d28cfad1f5774ea9a 28-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Improved Autofill logging." into oc-dev am: 2d5c0d89e5
am: eb9a99c3d4

Change-Id: Iefa99c2578934ba959d075e5b620d9cc81df668c
226ae10c66caa4d6744dded4703da9c9b4e7e364 28-Apr-2017 Julia Reynolds <juliacr@google.com> Merge "Documentation updates" into oc-dev am: b8d4a94867
am: 9b4511c643

Change-Id: Ib8d4c116d548b55f395e977ab76bc1f85d9791ba
9f9ee25515591ef33281708c0ab911962f4364a6 27-Apr-2017 Felipe Leme <felipeal@google.com> Improved Autofill logging.

- Removed ui.Helper.
- Replaced DEBUG and VERBOSE constants by sDebug and sVerbose.
- Added a shell command to dynamically set the constants.
- Removed obsoleted log statements.
- Changed log-level of some log entries.
- Removed unused methods.

Fixes: 36141126

Test: CtsAutoFillServiceTestCases pass
Test: manual verification

Change-Id: Ic08ee9a2adc10e63f49bbcc7ed126455462dc9c1
utofill/Dataset.java
utofill/FillContext.java
utofill/FillResponse.java
utofill/SaveInfo.java
b8d4a9486713f6b14f8bde44c7c3831eeed1f16d 28-Apr-2017 Julia Reynolds <juliacr@google.com> Merge "Documentation updates" into oc-dev
ee15506088d0088ab2f2ccd731c24f919a7b7357 28-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Refactored Autofill to move starting flag out of Session." into oc-dev am: b63d261f9c
am: f966d48f66

Change-Id: I2d7d5a8eb571ceb093f26d3f9805917b201167f7
0aa4c5065d1495ec0b2c6fe15324569f31dcbdb1 26-Apr-2017 Felipe Leme <felipeal@google.com> Refactored Autofill to move starting flag out of Session.

Otherwise, all onFillRequest() calls in the same partition would use
the same flags.

Fixes: 37675138
Test: existing CtsAutoFillServiceTestCases pass
Test: CtsAssistTestCases pass
Test: PartitionedActivityTest.testAutofill4ParitionsMixManualAndAuto() pass

Change-Id: I03c8a036637bae534904d4f41265e451088cf940
utofill/FillContext.java
97985d8453bb100d398abf899faee41b21a9cc7c 28-Apr-2017 Lucas Dupin <dupin@google.com> Merge "Wallpaper color extraction"
a851b5ae76a01b44711e45e03e8037c0cb348110 27-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "DO NOT MERGE Revert "Wallpaper color extraction API stub"" into oc-dev
0ffc13b9f2fb29c7d23cdafb31c3efef13b14639 27-Apr-2017 Julia Reynolds <juliacr@google.com> Documentation updates

Test: make
Change-Id: I9c02b3bd40ff19615747d238b1156d5d21e492e6
Fixes: 37736867
Bug: 37743680
otification/NotificationListenerService.java
9bd4ffa179254b16fe45e68df87f92bfb3e90caa 27-Apr-2017 Andrew Scull <ascull@google.com> Forward OemLockManager call to correct service method.

Fix typo that meant the wrong service method was called from the
manager.

Bug: 37658858
Test: Manual
Change-Id: Ib9306fba19b7ead7eddbf74fc2ec1968b49e4b47
emlock/OemLockManager.java
f5c6ce029c3efbba8e7f9cb20a3cce08730b203b 27-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Autofill binding permission fixes." into oc-dev am: d915c42150
am: bd67d13bfc

Change-Id: I714263ccec13b4e96f30b180340b9087f900ae0b
d6247427ac3137555055fda2bed511db4941ed30 27-Apr-2017 Julia Reynolds <juliacr@google.com> Merge "Api updates" into oc-dev am: f84467e19f
am: 7ee513c27b

Change-Id: Iafbf2f2ca92b288de7bded40772cd15eca2012ee
d915c42150b53c60b78354531f980a7e5766d6eb 27-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Autofill binding permission fixes." into oc-dev
f84467e19f16a63f47f13bfc9263c70b46816c24 27-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Api updates" into oc-dev
decd887f012f0c39bba855c8878eb5d8255595c4 27-Apr-2017 Felipe Leme <felipeal@google.com> Autofill binding permission fixes.

- Removed deprecated BIND_AUTO_FILL
- Renamed BIND_AUTOFILL to BIND_AUTOFILL_SERVICE
- Kept BIND_AUTOFILL as @hide
- Fixed the permission code

The permission check was actually ignored; it was probably broken when we
introduced support to settings.

Fixes: 37723410
Bug: 37563972
Test: manual verification with existing client
Test: CtsAutoFillServiceTestCases pass

Change-Id: If3abdcb0ae850f0a327bfdbb9ca6c44a24823047
utofill/AutofillService.java
utofill/AutofillServiceInfo.java
3fd72ff2e7a9d40dc3d295be6cbc712814fed0f6 26-Apr-2017 Lucas Dupin <dupin@google.com> DO NOT MERGE Revert "Wallpaper color extraction API stub"

This reverts commit c40608c041b1eb8b8cb4b96347c7ca29f4f79169.

Change-Id: Ia202f4b48b8ba22497db8aa97ba53d412f7b7bd5
allpaper/WallpaperService.java
ea1fb1e077e9fa8ce6a8a9e8caaf7423dc09cc9d 06-Apr-2017 Lucas Dupin <dupin@google.com> Wallpaper color extraction

Now it's possible to listen to changes on wallpaper colors by
registering a listener on WallpaperManager. It's also possible
to know the current wallpaper colors and if it's light or dark.

Test: runtest --path cts/tests/app/src/android/app/cts/WallpaperColorsTest.java && \
runtest --path cts/tests/app/src/android/app/cts/WallpaperManagerTest.java
Bug: 36856508
Change-Id: Ia6b317b710e721d26f0fe41c847b9426e61d8d8b
allpaper/IWallpaperConnection.aidl
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
4480564bedfcf84dc8203f7249238ca3c1c7e459 26-Apr-2017 Svetoslav Ganov <svetoslavganov@google.com> Merge "Get rid of custom negaitve save button label am: dc6cccb905" into oc-dev-plus-aosp
am: c8dda2ad63

Change-Id: Idb3668a644fa3a528811f59121fb0e5e252a82db
ac2a91672c7d9f650acb12b3b23cec9566e54ed2 26-Apr-2017 Philip P. Moltmann <moltmann@google.com> Merge changes from topics 'AutofillContext2', 'AutofillContext' into oc-dev am: dd91a5636b
am: 934238ff22

Change-Id: Ief2c8bcae4c39a7f51d368cb2b0426deea6bae99
dc6cccb905d77b1fd954c883e4369e7b401cb457 25-Apr-2017 Svetoslav Ganov <svetoslavganov@google.com> Get rid of custom negaitve save button label

Removed the ability for an autofill provider to set
a custom string for the negative button. Also make
the old hidden APIs non-abstract to avoid runime
crashes for unimplemented methods.

Test: CtsAutoFillServiceTestCases pass

bug:37649790

Change-Id: If776d26de48382eeb064bdead5d4d5fdb0ff2e7e
utofill/AutofillService.java
utofill/SaveInfo.java
121e526476fb226cabf400c55a0bbfdd0781e772 25-Apr-2017 Philip P. Moltmann <moltmann@google.com> Return all previous FillContexts onFill

Test: CtsAutoFillServiceTestCases
Fixes: 37673341
Change-Id: I80feb5bd8d6027fb4ec2dd32f5c486dae7c6bc4c
utofill/AutofillService.java
utofill/FillRequest.java
c7619632145c23e6b5dd45620094e0bc686ad2db 25-Apr-2017 Philip P. Moltmann <moltmann@google.com> Report multiple FillContext-s onSave

To make life easier the reponseId is not part of the FillResponse.

Test: CtsAutofillServiceTestCases (added test for multiple Contexts)
Change-Id: If09e00b7267d293e4234a7a9837ad88d73af1b24
Fixes: 36481649
utofill/FillCallback.java
utofill/FillContext.java
utofill/FillRequest.java
utofill/FillResponse.java
utofill/IFillCallback.aidl
bad42976009ffb61010136ed8055f9e0f6d2e416 25-Apr-2017 Julia Reynolds <juliacr@google.com> Api updates

- Better documentation on DEFAULT_CHANNEL_ID
- Renaming getChannel/setChannel/getTimeout/setTimeout
- Add documentation to getShortcutId
- @hide parcel constructors

Test: make, make cts
Bug: 37672218

Change-Id: I695b2620c51638a84930e9d1c5fbfd6d85699b55
otification/StatusBarNotification.java
83e4d4bed681fb34981679b8450325d395617732 25-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Make new onFill/onSave methods abstract." into oc-dev am: 3411adc4b3
am: 2509121907

Change-Id: I0de894537e3cdd3a9ce07f33894c7a0c3b2f6343
6a77849cca4b4017c337d204c0c8171fc121ca34 25-Apr-2017 Felipe Leme <felipeal@google.com> Make new onFill/onSave methods abstract.

Test: CtsAutoFillServiceTestCases pass
Test: manual verification

Bug: 37563972

Change-Id: I1447bcc3ac03b3cbf71362f370abedb9f00152b9
utofill/AutofillService.java
7d66c48adcab3f48d0b5304101115f77a1e017a1 25-Apr-2017 Philip P. Moltmann <moltmann@google.com> Merge "Take new autofill structure for each partition" into oc-dev am: f40d1cb773
am: 5a3ac07443

Change-Id: I425fcac1d41c82c3ba30144c899ced64def472f2
f40d1cb773064bf8cac7e5760163897e9b1ece40 25-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Take new autofill structure for each partition" into oc-dev
d8dddc8c72bff051230f0c0f11f3f8c11f79eb6f 25-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Hide deprecated APIs." into oc-dev am: 59fe3108fa
am: 4e71ae1243

Change-Id: Ib15e77c4ad3915ed41837584e587c2abbc6657de
59fe3108fa958b7a84cea6ddf863e7a4b683716c 25-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Hide deprecated APIs." into oc-dev
2f517c26d23393d4f0d6b3352de6e4c92c9e107e 22-Apr-2017 Philip P. Moltmann <moltmann@google.com> Take new autofill structure for each partition

Bug: 36481649
Test: CtsAutofillServiceTestCases (now with a test that has an autofill
session over two full screen fragments)
Change-Id: I55f2f6203f3bd5a7082b4ce90500d2c16a260c7d
utofill/AutofillService.java
utofill/FillRequest.java
85d1c2d2905362b984563d9b5e8332010c272fc5 21-Apr-2017 Felipe Leme <felipeal@google.com> Minor fixes on Autofill Framework:

- Removed default implementation of onProvideAutofillVirtualStructure() that
was using accessibility API (it's useless because without the View calling
AutofillManager.notifyViewEntered(), it would never be triggered).
- Fixed obsolete TODOs.
- Removed obsolete service class name constant.
- Removed unused debug constant.

Fixes: 37078783
Fixes: 33197203
Bug: 33802548
Bug: 35956626

Test: CtsAutoFillServiceTestCases pass
Merged-In: I834d34b8af8bf0d781dc7e0ffcd6e600bfa2d183
Change-Id: I834d34b8af8bf0d781dc7e0ffcd6e600bfa2d183
utofill/AutofillService.java
utofill/FillResponse.java
5fd001ac82c4780bd40bd07d3e0d2c732df3a843 25-Apr-2017 Karthik Ravi Shankar <karthikrs@google.com> Merge changes from topic 'virtual-display-api' into oc-dev am: 13ba34bf37
am: 875c8445a8

Change-Id: I12f88b60d82fba4227c9f565009e6c3e42f6798c
13ba34bf3789a33a0ab62947b12445820dffa945 24-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge changes from topic 'virtual-display-api' into oc-dev

* changes:
Add command line option to set compatibility display properties
Make VR mode virtual display properties customizable
cb4dd8090b0e68aa185ba1a8a13686c38311d0db 22-Apr-2017 Felipe Leme <felipeal@google.com> Hide deprecated APIs.

Test: CtsAutoFillServiceTestCases pass
Bug: 37563972

Change-Id: Ia5f33c5624b7a6be3c152e126c99800914d23cbd
utofill/AutofillService.java
utofill/FillResponse.java
c651e4d34f0c6dca5d6675cec54c7027e2e7dd58 24-Apr-2017 Felipe Leme <felipeal@google.com> Minor fixes on Autofill Framework:

- Removed default implementation of onProvideAutofillVirtualStructure() that
was using accessibility API (it's useless because without the View calling
AutofillManager.notifyViewEntered(), it would never be triggered).
- Fixed obsolete TODOs.
- Removed obsolete service class name constant.
- Removed unused debug constant.

Test: CtsAutoFillServiceTestCases (on oc-dev) pass
Test: manual verification (on oc-dev)
Bug: 37078783
Bug: 33197203
Bug: 33802548
Bug: 35956626

Change-Id: I834d34b8af8bf0d781dc7e0ffcd6e600bfa2d183
utofill/AutofillService.java
utofill/FillResponse.java
0f80719a6f3c30619ad73a9f2452626ed5ef5bd0 13-Apr-2017 Kang Li <kanlig@google.com> Moved LRResolverRankerService to ExtServices, and added a permission to
ensure that ResolverRankerServices are from trust sources.

Test: manually shared images in Camera, and in PTP to confirm it works
as expected.

Change-Id: I3549292d424fec949e9115faea7a0c5bdec06e87
(cherry picked from commit 61cf4d145e3f899ff2ff4500c3e46ea2c39adaf3)
esolver/ResolverRankerService.java
ee8187688effbe5a2036d95d115e75bc828f7a0f 21-Apr-2017 Kang Li <kanlig@google.com> Merge "Moved LRResolverRankerService to ExtServices, and added a permission to ensure that ResolverRankerServices are from trust sources."
8923e1a0a9b0d2819fba1e2e891b77f2719fed79 21-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Removed deprecated SaveInfo methods." into oc-dev am: fc533da920
am: 184347912d

Change-Id: Ib49f2d736db07ab73d8d5ff2ca6efa7dc08fa3e2
61cf4d145e3f899ff2ff4500c3e46ea2c39adaf3 13-Apr-2017 Kang Li <kanlig@google.com> Moved LRResolverRankerService to ExtServices, and added a permission to
ensure that ResolverRankerServices are from trust sources.

Test: manually shared images in Camera, and in PTP to confirm it works
as expected.

Change-Id: I3549292d424fec949e9115faea7a0c5bdec06e87
esolver/ResolverRankerService.java
0d3db06d1d287c3efe18c951e08f4e7c6b3ebd47 21-Apr-2017 Felipe Leme <felipeal@google.com> Removed deprecated SaveInfo methods.

Test: CtsAutoFillServiceTestCases pass
Bug: 37563972
Bug: 33197203

Change-Id: Ie90fa78c31f033c47e7b2f018355ae87759c622b
utofill/SaveInfo.java
4f99cbdff5f35f13502e0ef7d2720427755829a8 21-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Implemented FillResponse.setIgnoredIds()." into oc-dev am: bb21986b33
am: 569221ee18

Change-Id: I77f4b836247dc733c5220c16d2cb65a39a6f6903
01ded104a139d9f68b0fa05c548c9261e61c75c1 21-Apr-2017 Felipe Leme <felipeal@google.com> Implemented FillResponse.setIgnoredIds().

Fixes: 37424141

Test: existing CtsAutoFillServiceTestCases pass
Test: PartitionedActivityTest.testIgnoredFieldsDontTriggerAutofill

Change-Id: I09bd95230c45d2970080514e25cb53320de49b56
utofill/FillResponse.java
5d7027db6e0b82c0ffcb101c3a17997f6aefafc5 12-Apr-2017 Andrew Scull <ascull@google.com> Add implementation alternatives for OemLockManager.

The OEM lock can be implemented with the persistent data block or the
OemLock HAL.

Test: gts-tradefed run gts -m GtsOemLockServiceTestCases -t com.google.android.oemlock.gts.OemLockServiceTest
Bug: 34766843
Change-Id: I16b31785d9af58212a050a299ef024be3139f0c6
emlock/IOemLockService.aidl
emlock/OemLockManager.java
20ab6c550d60011937b60d32b9ce9c3f2663b6ff 19-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Some Autofill API changes." into oc-dev am: fe1bddfbb5
am: a4d2749cf8

Change-Id: I460229f5bf0c4fc832256e00746a813fd08991ea
fe1bddfbb54c20156b45e99c9d18166d702c9adb 19-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Some Autofill API changes." into oc-dev
e43fe0af9db987dbb345f7e424a8a9512d01a7bb 19-Apr-2017 Philip P. Moltmann <moltmann@google.com> Merge "Add a way to read the last AutofillSelection." into oc-dev am: 42775f2a89
am: ded76ed806

Change-Id: I8cf4a959e9d60bd15c61955a802115904a2baead
e5f9c30688f0277505fb6b50ea385e5df6271ed8 19-Apr-2017 Felipe Leme <felipeal@google.com> Some Autofill API changes.

- Added View.IMPORTANT_FOR_AUTOFILL_YES_INCLUDE_DESCENDANTS
- Added View.IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS
- Added FillResponse.Builder.setIgnoredIds()
- Fixed javadoc links.

These changes are not implemented yet....

Bug: 37424141
Bug: 36171235
Test: m update-api

Change-Id: I604960443ab08cd3f2a84a70b0a2cece7cb0a00c
utofill/AutofillService.java
utofill/FillCallback.java
utofill/FillResponse.java
utofill/SaveCallback.java
utofill/SaveInfo.java
cc684ed41f17ccdce45a056fd4034efc35b213d5 17-Apr-2017 Philip P. Moltmann <moltmann@google.com> Add a way to read the last AutofillSelection.

- Check UID to make sure one service cannot read FillSelections of other
services
- Add id to Dataset to allow to tag the datasets. This id is then found
in the FillSelection.Event
- Add clientState to FillSelection to allow service to store more data

Fixes: 36871500
Test: CtsAutoFillServiceTestCases
Change-Id: Ice894245508227265294a1c59ea97842175e5aec
utofill/AutofillService.java
utofill/Dataset.java
utofill/FillEventHistory.aidl
utofill/FillEventHistory.java
d8abd91dfced2a1e57d06020eb54bdc81fc4a77b 19-Apr-2017 Philip P. Moltmann <moltmann@google.com> Merge "Change saveOnAllViewsInsible from boolean to flags" into oc-dev am: 7fa4198ab1
am: 251657696b

Change-Id: I475cbfe11a4ca10fe4c7d4da9d617c0ed7d15f7e
9023d14fb30c23ef58171a5133f893b2ee4e743c 18-Apr-2017 Philip P. Moltmann <moltmann@google.com> Change saveOnAllViewsInsible from boolean to flags

Change-Id: Ibd6f283479bad841eb7b20bb8d006562c4398e9f
Fixes: 35708237
Test: CtsAutoFillServiceTestCases
utofill/SaveInfo.java
4914803e0596b37e75c7a0d15621fac0ec01ced2 18-Apr-2017 Julia Reynolds <juliacr@google.com> Merge "Add user to channel/group modification callbacks." into oc-dev am: 1ed2771450
am: c04cb25cdb

Change-Id: Ic73c2271e9a764a032392c71a6cf46839e2c06e0
955b263deb383c9e7a6bda554b6a30fcf2579fa9 18-Apr-2017 Philip P. Moltmann <moltmann@google.com> Merge "Allow to finish session when all views are gone" into oc-dev am: 3440e92009
am: 88a9bd73bb

Change-Id: I90aa430b7bcb5494804abc3960273c32b1c1bf81
1ed27714509853831e2d4e5b3098b643ccc164c4 17-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add user to channel/group modification callbacks." into oc-dev
cdf9ce7229e791fe345b0860fe32433f15c95db8 13-Apr-2017 Karthik Ravi Shankar <karthikrs@google.com> Make VR mode virtual display properties customizable

Currently the virtual display created in VR mode is of fixed size. This
may not work for all the devices. Add APIs to make the resolution and
DPI adjustable from VrCore.

Bug: 37260266
Test: Sample reflection which works - cl/153039188
Test: adb shell set-persistent-vr-mode-enabled true
adb shell vr set-compatibility-display-properties 500 500 500
adb shell dumpsys display
>> DisplayDeviceInfo{"VR 2D Display":
uniqueId="virtual:android,1000,VR 2D Display,0", 500 x 500, modeId
6, defaultModeId 6, supportedModes [{id=6, width=500, height=500,
fps=60.0}], colorMode 0, supportedColorModes [0], HdrCapabilities
null, density 500, 500.0 x 500.0 dpi, appVsyncOff 0, presDeadline
16666666, touch NONE, rotation 0, type VIRTUAL, state ON, owner
android (uid 1000), FLAG_PRIVATE, FLAG_NEVER_BLANK,
FLAG_OWN_CONTENT_ONLY}

Change-Id: Ibb2d03b7f7f8f62fcce97fcc2b373ae3f09cef01
Signed-off-by: Karthik Ravi Shankar <karthikrs@google.com>
r/IVrManager.aidl
8e3b1a63f9cd76a71ecbfc8c6a0c68b4cbecab90 17-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "EUICC API changes to support error resolution."
f27d6b2b821bf818810a0e303d536906b889588d 13-Apr-2017 Julia Reynolds <juliacr@google.com> Add user to channel/group modification callbacks.

Because listeners can see notifications on managed profiles.

Test: runtest systemui-notification and testing with a sample app
(reading and updating channels and getting change
callbacks on a managed profile)
Change-Id: I5d7af3c417e3a3d18f992cc9ad01fbd7959de398
Fixes: 36783632
otification/INotificationListener.aidl
otification/NotificationListenerService.java
494c3f5da2c467ad07f50b4e1ad01065a8e3aa4f 11-Apr-2017 Philip P. Moltmann <moltmann@google.com> Allow to finish session when all views are gone

An service can option to finish the session once all views that it
declared as important. Views that are important are all autofillable
views of any partition and the saveable fields of the last partition.

Test: CtsAutoFillServiceTestCases
Fixes: 35708237
Change-Id: I0ccade8ebb427e5d8928697ef0007c75d3f83df0
utofill/SaveInfo.java
626eb77c16855aa5c58062f5a3ef07543cb77fa4 15-Apr-2017 Jorim Jaggi <jjaggi@google.com> Merge "Wallpaper color extraction API stub" into oc-dev am: 6acf7a7b45
am: 9b24dd3186

Change-Id: Iae905316d4a489de425d0dd8da1b0cf35c559f82
6acf7a7b45ea0cf54d14f28ad8538e3b7e309819 15-Apr-2017 Jorim Jaggi <jjaggi@google.com> Merge "Wallpaper color extraction API stub" into oc-dev
6359d8565855eebf8400af8748202d4244ad9e88 15-Apr-2017 Svetoslav Ganov <svetoslavganov@google.com> Merge "Add support for multiple fill contexts" into oc-dev am: 41200eac71
am: 721b28f029

Change-Id: I1e3da29514943c1e7476db8bc6a1cbba46b7a116
41200eac711f8a2a50c0e87ad8b5bae509589c61 15-Apr-2017 Svetoslav Ganov <svetoslavganov@google.com> Merge "Add support for multiple fill contexts" into oc-dev
c40608c041b1eb8b8cb4b96347c7ca29f4f79169 15-Apr-2017 Lucas Dupin <dupin@google.com> Wallpaper color extraction API stub

Now it's possible to listen to changes on wallpaper colors by
registering a listener on WallpaperManager. It's also possible
to get the current wallpaper text color hints.

Bug: 36856508
Test: compilation
Change-Id: I5102cb7be9a4af60b85fc8913154a79dfe5c21a0
allpaper/WallpaperService.java
013efe173e56612a910ebd8576480ce4ef005e3c 14-Apr-2017 Svet Ganov <svetoslavganov@google.com> Add support for multiple fill contexts

When saving data filled by the user the platform provides to
an autofill provider the state of the UI allowing the provider
to interpret this state and store relevant information.

A limitation of the current design is that the fill provider
needs to interpret the screen content twice, once handling a
fill request and once handling a save request. To address this
we are introducing a id for each fill request allowing the
autofill provider to associate arbitrary state with each fill
request and store it in the client data bundle later passed
to save.

Another limitation of the current design is that if the screen
changes dynamically while the user interacts with the app the
UI state passed on save represents a static snapshot, therefore
it is not possible to the autofill provider to determine the
context in which the data in the UI was filled. We could
keep the views and have deltas for views being removed/added
/moved/changed but this is not enough as the fill provider
needs to know not only what changed but what changed for every
fill request and in one session there could be multiple fill
requests. To address this we provide a list of fill contexts
on save each of which has the id of the corresponding fill
request. This allows the fill provider to know the exact context
in which the data was popuplated and also use its custom client
state for this fill request if desired.

This change deprecates the old APIs and the new ones delegate
to the old ones. Once the clients migrate to the new APIs we
will remove the old ones.

Test: all autofill CTS tests pass

Change-Id: Idcebcc671aa3c078a305d8c358e225274fccc588
utofill/AutofillService.java
utofill/FillCallback.java
utofill/FillContext.java
utofill/FillRequest.aidl
utofill/FillRequest.java
utofill/FillResponse.java
utofill/IAutoFillService.aidl
utofill/IFillCallback.aidl
utofill/SaveInfo.java
utofill/SaveRequest.aidl
utofill/SaveRequest.java
568b59c62ccc5a9a22a598d081408e8615ed49fc 14-Apr-2017 Alan Viverette <alanv@google.com> Merge "Update more implementations of findViewById()" into oc-dev am: b7f0db8d89
am: 2de6b0dab0

Change-Id: I03772206b8849237e1138303229c6ed1c3c2b432
1b674659182e5d012f86d75cc6cb0016546a4af9 14-Apr-2017 Andrew Scull <ascull@google.com> Merge "Service for OEM lock management." into oc-dev am: e52a1bfede
am: d4be031c76

Change-Id: I9ab76546a140062940c128abdc2b8b4072d3b0f2
b7f0db8d89d16ed653c04f0ddf1d6513bb95c55f 14-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Update more implementations of findViewById()" into oc-dev
e52a1bfede79f87a75c498730860796ba74dea83 14-Apr-2017 Andrew Scull <ascull@google.com> Merge "Service for OEM lock management." into oc-dev
04fd470ce0166abb36d9be829d6e9b98a55eaf35 13-Apr-2017 Alan Viverette <alanv@google.com> Update more implementations of findViewById()

Bug: 24137209
Test: make checkbuild -j32
Change-Id: I104969fc74d6dc1d159e3d1ff5926640b124a540
reams/DreamService.java
cb98d9d6f3d1e01e36b27ad4006059256b6e5ead 13-Apr-2017 Svet Ganov <svetoslavganov@google.com> Merge "Add autofill feature API" into oc-dev am: a402d6dd2f
am: bbef731c2d

Change-Id: I3d1429fe4d101072200aae522a2bdf00596273de
a402d6dd2f15e179d08cb0d5ffd668916e9a8bfb 12-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add autofill feature API" into oc-dev
43574b03e5604e346f088a1b0da2ab37fb115226 12-Apr-2017 Svet Ganov <svetoslavganov@google.com> Add autofill feature API

We now have a software feature for autofill which can be used
by partners to disable it on low-end devices or form factors
for which autofill doesn't make sense.

bug:35956220

Test: manual (requires a custom build)

Change-Id: I6c06462ed9ca3ae93331700dce38a8c08dfd0722
utofill/FillResponse.java
163bc0480ef8126a6b71e35c11246d96b8c90d1d 12-Apr-2017 Julia Reynolds <juliacr@google.com> Merge "Allow companion device mgrs channel access" into oc-dev am: de99065a40
am: a38256bb7b

Change-Id: Ieef842a262e0f10f01ef801d4b8e4f3c80b83ef6
29beb7f0ce1d3ab43fcd35b1aea7598424f05f46 11-Apr-2017 Svetoslav Ganov <svetoslavganov@google.com> Merge "Keep a removed API to not break GCore presubmit" into oc-dev am: c62250ad52
am: 436bb48e56

Change-Id: I3aa39f68abe16659760fb243217d2ca84df4d046
cfa70fa0abe90d91bd7997ef23432e5631b40d2a 07-Apr-2017 Jeff Davidson <jpd@google.com> EUICC API changes to support error resolution.

-Implement EuiccManager#startResolutionActivity. This is just a
pass-through to start the LUI dispatcher.

-Add and implement EuiccManager#continueOperation. The LUI calls this
method upon completion of a resolution action to continue the original
operation.

-Remove the "consentGranted" bit from DownloadableSubscription. This
was originally to be used by the LUI to communicate user consent, but
it is impossible to allow the LUI to modify the given
DownloadableSubscription while also preventing it from tampering by
the untrusted app. It's also unclear what kind of "consent"
was granted - it could be to disable the physical SIM, or to
grant an unprivileged app permissions to switch. Instead, this bit is
passed by the LUI to continueOperation() as an extra and propagated
down as an explicit parameter to the LPA.

Bug: 33075886
Test: Manual verification using test LPA
Change-Id: I17d8028e0ecea365ca5a2cc17424fc9645f5a489
uicc/DownloadResult.java
uicc/EuiccService.java
uicc/GetDownloadableSubscriptionMetadataResult.java
uicc/IEuiccService.aidl
73ed76bc6f92ecee9ae2e3172ec54c081443953b 04-Apr-2017 Julia Reynolds <juliacr@google.com> Allow companion device mgrs channel access

- Callbacks when channels and groups are modified
- Allow them to read and update channels and groups

Test: runtest systemui-notification
Change-Id: Ie4d02bd4583f71f9faf27603bcc59a1ec0eeaf46
otification/INotificationListener.aidl
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
fc4a3004e37b25065412fa65cbe060c08bf0398a 11-Apr-2017 Svet Ganov <svetoslavganov@google.com> Keep a removed API to not break GCore presubmit

Change-Id: Ica38b7aad2a5a8792917d0da1d497f373b118077
utofill/AutofillService.java
ffa27feeb43566db79f5716230b91c880e186a04 11-Apr-2017 Svet Ganov <svetoslavganov@google.com> Merge "Move API for disabling an autofill service to the manager" into oc-dev am: 7a6df3b777
am: de369349a0

Change-Id: I2d48598f8e685591a88882aa1ba81a4e65268e3b
f20a037ba2a6990bb51ad40ee18c7af18464f620 11-Apr-2017 Svet Ganov <svetoslavganov@google.com> Move API for disabling an autofill service to the manager

Test: the topic has a CTS test

bug:37170723

Change-Id: I2be18968ea8df0fd3fb070fe2efc3e811b0e5a76
utofill/AutofillService.java
utofill/IAutoFillService.aidl
utofill/IAutoFillServiceConnection.aidl
2b0e121c9c07c24224cc19d99f4b89df246b8cde 08-Apr-2017 Philip P. Moltmann <moltmann@google.com> Merge "Restore session on new window after app kill" into oc-dev am: 51785edbe9
am: a839e15a65

Change-Id: Ieba9858a808080aba74a3fd45021dac69ad83453
eab62baabf290ea6671577a66cfc9fdd1b145d0e 20-Mar-2017 Philip P. Moltmann <moltmann@google.com> Restore session on new window after app kill

Also:
- Give the session an integer ID as the activityToken is not stable over
restarts of the activity
- Verify that session is only accessed by one UID
- stabilize AccessibilityViewIds over activity lifecycle at least for
the IDs we can do that. This required to split the ID namespace in
"per-app" and "per-activity" views. Only the later ones can be
restored.
- Do not end session when app is killed (as it can be restarted)

Bug: 35484143
Fixes: 36392498
Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases --test=android.autofillservice.cts.SessionLifecycleTest
cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
Change-Id: I229acc1b3ce35fb57262da7d7466b5d4328b49d4
utofill/AutofillService.java
d10879d146d4ff0001ebb276f5c6b1b7f15f90be 08-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Autofill Partitioning: support multiple SaveInfos." into oc-dev am: 5c8d88e855
am: 49b37310ab

Change-Id: I5967cd823a11dc049a593918c29b5950f36ef0e4
b265f8c11e318ef758af50ae96b8ae8a12cca8fd 07-Apr-2017 Jeff Davidson <jpd@google.com> Merge "Fix NPE when parceling getMetadata result."
7d5adb5b86a83759c52a3b7aa7bc58beb8ce1c43 07-Apr-2017 Felipe Leme <felipeal@google.com> Autofill Partitioning: support multiple SaveInfos.

Bug: 35707731
Test: CtsAutoFillServiceTestCases (with new tests) pass

Change-Id: I2f234ca13c7e74f84c762473e38f938ed47f216f
utofill/SaveInfo.java
ba3918b1d8e7279948fa6da897a0c36193ec0506 07-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Removed deprecated onFillRequest() method" into oc-dev am: 7a7c0ace82
am: 3e91021212

Change-Id: Ia3613f20ada223fedbd6562f189b5992e36d3c33
7a7c0ace8277d06513ab9eaa19159d66919764ba 07-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed deprecated onFillRequest() method" into oc-dev
24700423b4a5dc52e612584e456350e8ee61a0df 06-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add a service to rank apps for ResolverActivity."
e397bf3f22558756147f9ee5b49cb2d70f08ee66 06-Apr-2017 Jeff Davidson <jpd@google.com> Fix NPE when parceling getMetadata result.

Bug: 33075886
Test: None (trivial change)
Change-Id: Ie0bb576e7162d405a05a2b8a5798d9480cb3239c
uicc/GetDownloadableSubscriptionMetadataResult.java
38a6da6473563ce2dcee360cabe1183c2a7c926e 05-Apr-2017 Kang Li <kanlig@google.com> Add a service to rank apps for ResolverActivity.

bug: 36952725,30982298

Test: used PTP before and after this fix.

Change-Id: I5b249af2dd0d9fe32d1e524e8d2675c863e92b5b
esolver/IResolverRankerResult.aidl
esolver/IResolverRankerService.aidl
esolver/ResolverRankerService.java
esolver/ResolverTarget.aidl
esolver/ResolverTarget.java
712decf92f34c7949b0518d1cb2c1e7324f571f7 06-Apr-2017 Julia Reynolds <juliacr@google.com> Merge "Remove unneeded methods" into oc-dev am: 9a8f641801
am: 4c6d2c76a4

Change-Id: I976bb62b349a5de4655d44245a06d8898ed96461
9a8f641801fcae3790410b8f6f5c486111c0a23d 06-Apr-2017 Julia Reynolds <juliacr@google.com> Merge "Remove unneeded methods" into oc-dev
c6f9ea881cd86e5dfc2bdb4962678c4821166f8d 06-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Pass FillResponse bundle on subsequent onFillRequest() calls." into oc-dev am: 84705f9fb9
am: 3dac19b040

Change-Id: I805151dffeea2856a36b8eb9cc300b5238ace5c5
8fe603dd6f3690b74b68c3d622c2b82259ee5109 06-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Created SaveInfo types for email and username." into oc-dev am: aaca304a31
am: ff43ec447d

Change-Id: Ied5509382cd1edb27c81e8a68ddb95c53fc147fd
52d5d3dfc7d4d4b6dfed1686cc904c08d7433a04 04-Apr-2017 Felipe Leme <felipeal@google.com> Pass FillResponse bundle on subsequent onFillRequest() calls.

BUG: 35707731

Test: existing CtsAutoFillServiceTestCases pass
Test: more tests on PartitionedActivityTest

Change-Id: I510aff54d0d9d7e0cce90f9786e3e1f6cab180f9
utofill/AutofillService.java
utofill/FillResponse.java
72544c6f89036dcdc6c75a7a1a52e338b7177fce 06-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Changed FillResponse.setAuthentication() to require field ids." into oc-dev am: a9baa4c851
am: 260945be5f

Change-Id: Ia72e0577b5ce6a8dbaeb676c8841f16012b5338d
bbced1c3d4c20993935b7b6a5fbca43fadde00a8 05-Apr-2017 Kang Li <kanlig@google.com> Add a service to rank apps for ResolverActivity.

bug: 36952725,30982298

Test: used PTP before and after this fix.

Change-Id: I5b249af2dd0d9fe32d1e524e8d2675c863e92b5b
esolver/IResolverRankerResult.aidl
esolver/IResolverRankerService.aidl
esolver/ResolverRankerService.java
esolver/ResolverTarget.aidl
esolver/ResolverTarget.java
aaca304a31ed260e4cca256a28805f71aa2e4ee9 06-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Created SaveInfo types for email and username." into oc-dev
60315337024c9ab7dc81f269c676bb8fc17e0700 04-Apr-2017 Julia Reynolds <juliacr@google.com> Remove unneeded methods

Test: make, make cts, make cts-verifier, runtest systemui-notification
Change-Id: I25b559cfcc30f2d85f468adf840f9124e80f00b0
otification/Adjustment.java
otification/NotificationAssistantService.java
a9baa4c8511baa038d2ed6f59bd08d3bd610a5ed 06-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Changed FillResponse.setAuthentication() to require field ids." into oc-dev
17168b773f83f5c674205922a12733d407109bcd 05-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Removed deprecated auto(F)ill classes." into oc-dev am: b44feb154b
am: dae23dab8c

Change-Id: I9285ea27ae36d06d1466ec74322a38609acfaab4
b44feb154b3d5a433d3cfeefb1d67ebd8dbcb9b9 05-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Removed deprecated auto(F)ill classes." into oc-dev
6a2dd5450282a76ceee0dc8aefc698385fa0ed22 05-Apr-2017 Kang Li <kanlig@google.com> Merge "Revert "Add a service to rank apps for ResolverActivity."" into oc-dev am: b24399547c
am: e9b280bbec

Change-Id: I84ac856c1838184e2ce819e5f637f2f97cdacbf6
b24399547c931dfcb9e6046072ee9c0f682464ac 05-Apr-2017 Kang Li <kanlig@google.com> Merge "Revert "Add a service to rank apps for ResolverActivity."" into oc-dev
c88749fb5a8de40572582e6eceefd46cda3afa2d 05-Apr-2017 Kang Li <kanlig@google.com> Revert "Add a service to rank apps for ResolverActivity."

This reverts commit 90370e0b2497deba9382ab7ff1539b6849df8139.

b: 36952725

Change-Id: Ifa8f182c707cdbbc989b1f61630f7a8fa856d32d
esolver/IResolverRankerResult.aidl
esolver/IResolverRankerService.aidl
esolver/ResolverRankerService.java
esolver/ResolverTarget.aidl
esolver/ResolverTarget.java
b3c3537566b5993a2abc01b63da9dbe6fd32e57a 03-Apr-2017 Felipe Leme <felipeal@google.com> Changed FillResponse.setAuthentication() to require field ids.

Currently, authenticate FillResponses do not support partition and follows
the "Highlander approach" (There can be just only one), which causes the
authentication UI to show on all views.

This CL overloads FillResponse.setAuthentication() so it requires the
AutofillIds of the autofillable fields, although behind the scenes it
calls the old method - once clients use the new method, the old method
will be removed and the underlying implementation changed.

The new behavior will be tested by testFillResponseAuthJustOneField()
on LoginActivityTest, although currently it's testing the old behavior.

Test: LoginActivityTest.testFillResponseAuthJustOneField

Bug: 35707731
Bug: 36855717

Change-Id: I601f3e4776aa8763415a06d8d802901a930728d2
utofill/FillResponse.java
a86aee6ef3274d15c061a2df344408cd8cf2831d 05-Apr-2017 Felipe Leme <felipeal@google.com> Removed deprecated onFillRequest() method

Bug: 35708229
Test: manual verification
Test: CtsAutoFillServiceTestCases pass

Change-Id: Ie6d146386752273b6a35d16102ccedaf6a161676
utofill/AutofillService.java
f78e952d8df7074aa7380c5998826a4dffe335e7 05-Apr-2017 Felipe Leme <felipeal@google.com> Removed deprecated auto(F)ill classes.

Bug: 35956626
Test: manual verification
Test: CtsAutoFillServiceTestCases pass
Change-Id: Icb622589c41e6a286d51e3f85bd5a813e483b5ea
utofill/AutoFillService.java
utofill/AutofillService.java
utofill/AutofillServiceInfo.java
utofill/Dataset.java
utofill/SaveInfo.java
3a41d7f10b497f487ea95cb912451fd1a3b79ae0 04-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Initial implementation of autofill partitioning." into oc-dev am: ba2e284a62
am: dac7ecebe7

Change-Id: Ia1e8bd053d925e1acd28d873c3e167b9ded02e85
ba2e284a62eaf79b70a84d3e648ad144a7dea344 04-Apr-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Initial implementation of autofill partitioning." into oc-dev
0962262f42e3636270689100e1bb90b8f3cf6d77 04-Apr-2017 Felipe Leme <felipeal@google.com> Created SaveInfo types for email and username.

Bug: 35707731
Test: LoginActivityTest#testCustomizedSaveUsername
Test: LoginActivityTest#testCustomizedSaveEmailAddress
Change-Id: I3598c64e4f6bb9ceff544c3994d6cdeebd760a85
utofill/SaveInfo.java
f43ca7968fed9fe8862d9b7217c94687dbb12e0a 31-Mar-2017 Felipe Leme <felipeal@google.com> Initial implementation of autofill partitioning.

BUG: 35707731
Test: existing CtsAutoFillServiceTestCases pass
Test: PartitionedActivityTest

Change-Id: If9df5fe63249f0b9e9da058d1c9327dfd3c09cf3
utofill/Dataset.java
90370e0b2497deba9382ab7ff1539b6849df8139 14-Mar-2017 Kang Li <kanlig@google.com> Add a service to rank apps for ResolverActivity.

bug: 30982298
Test: manual - shared images in Camera, texts in Messenger, and webpages
in Chrome.

Change-Id: If335c269ca54145839ad8fd4b3f9b93a74b550f8
(cherry picked from commit 35b9e3015565850e9de963e4bda1be227825df5d)
esolver/IResolverRankerResult.aidl
esolver/IResolverRankerService.aidl
esolver/ResolverRankerService.java
esolver/ResolverTarget.aidl
esolver/ResolverTarget.java
9bcef123f49bbb5556e5feedfa2b6a67e5bedb70 03-Apr-2017 Jeff Davidson <jpd@google.com> Merge "Squashed merge of master-sim into master."
9f37fa92e0d99c630ca23715005f1860d9e1c056 03-Apr-2017 Jason Monk <jmonk@google.com> Merge "Add test API for if the device supports QS" into oc-dev am: be436bdefe
am: b3963766c6

Change-Id: I9601140fb9d24cec74d3c028240acaa1b7d0113d
be436bdefe1947c01eb4b42bf1b864b1e86b7fb9 03-Apr-2017 Jason Monk <jmonk@google.com> Merge "Add test API for if the device supports QS" into oc-dev
35cda39422acdeb3fa47ca60f131678e52dbfcb3 27-Feb-2017 Jeff Davidson <jpd@google.com> Squashed merge of master-sim into master.

Includes the following commits:

==

New system feature: eUICC.

Presence of this feature implies that eUICC-related APIs are expected
to function as long as an eUICC is present in the device. Note that an
eUICC may be embedded in the device but may also be removable.

==

Add empty EuiccManager API and plumbing.

==

Add stub EuiccService.

EuiccService is the class that the LPA app must implement; for now,
just define the action and priority so that the implementation can be
found. Actual methods will come later.

Also declare two relevant permissions: BIND_EUICC_SERVICE, which the
implementation must require (so that nobody else can bind to the
service directly), and WRITE_EMBEDDED_SUBSCRIPTIONS, which permits
signature|privileged apps and CTS (via development) to access
EuiccManager APIs.

==

Add UiccAccessRule based off UiccCarrierPrivilegeRules#AccessRule.

This class can be used to transfer access rules between an
EuiccService implementation and the platform.

We also add a simple encoding/decoding of a list of rules so that they
may be stored in the subscription info table.

==

Add getEid() to EuiccManager/EuiccService.

getEid() fetches the EID. It requires either a privileged permission
(READ_PRIVILEGED_PHONE_STATE) or carrier privileges on the
currently-active profile. Until there is a use case that requires
opening this up to apps with only READ_PHONE_STATE, we shouldn't do
so.

To avoid churn in the future, the API signatures for EuiccService
include a slot ID to identify which SIM slot is being used. However,
this parameter is currently not populated correctly (nor is it usable,
as no Telephony APIs accept a slot ID to address commands). There is
no need to expose it yet in the EuiccManager APIs as we expect to
follow the TelephonyManager pattern of allowing per-slot instances of
EuiccManager in the future while keeping other method signatures the
same.

==

Define Euicc UI actions in EuiccManager/EuiccService.

The EuiccManager actions are to be implemented by the platform (and
only the platform), which forwards the actions to the active
implementation.

Also, remove our explicit priority meta-data tag as we can just rely
on android:priority in the corresponding intent-filter.

==

APIs for downloading embedded subscriptions.

Includes:

-getDownloadableSubscriptionMetadata, used by the platform and LUI to
fetch metadata about a downloadable subscription. The platform will
use this to perform the necessary permission checks (only allowing
otherwise-unprivileged apps to download profiles that are permitted
per the subscription metadata), and the LUI can use this to present
the name of the profile.

-downloadSubscription, to actually perform a profile download.

The stub for startResolutionActivity is included but not implemented;
resolution activities will be handled in a follow-up change.

==

Test: TreeHugger
Change-Id: I47b1da5a69f0736012cb137e02cd6c4e07fdaace
uicc/DownloadResult.aidl
uicc/DownloadResult.java
uicc/EuiccService.java
uicc/GetDownloadableSubscriptionMetadataResult.aidl
uicc/GetDownloadableSubscriptionMetadataResult.java
uicc/IDownloadSubscriptionCallback.aidl
uicc/IEuiccService.aidl
uicc/IGetDownloadableSubscriptionMetadataCallback.aidl
uicc/IGetEidCallback.aidl
3b8b46f3a46ccf35a6bb6a828af0f2d011cc9abe 13-Feb-2017 Andrew Scull <ascull@google.com> Service for OEM lock management.

The new service separates OEM lock management from the implementation.
Currently, a user restriction (DISALLOW_OEM_UNLOCK) and the persistent
data block have been used to implement OEM lock management. In future,
other implemention will be used e.g. a secure element.

The new API also allows for a signature to be passed when changing
whether the device is allowed to be OEM unlocked by the carrier which
can be used for cryptographic protection of the flag.

Bug: 34766843
Test: gts-tradefed run gts -m GtsOemLockServiceTestCases -t com.google.android.oemlock.gts.OemLockServiceTest
Test: cts-tradefed run cts -m CtsPermission2TestCases -t android.permission2.cts.PrivappPermissionsTest
Change-Id: I01660d7605d297f273d43436ca03d64ff611b6cf
emlock/IOemLockService.aidl
emlock/OemLockManager.java
ersistentdata/PersistentDataBlockManager.java
99f087ea70617c5d3c1721c5306bd80669d1ae16 01-Apr-2017 Felipe Leme <felipeal@google.com> Merge "Moar pre-partitioning refactoring." into oc-dev am: 92f76ba958
am: 9dd6148899

Change-Id: Ic4fc2f86a5340f5569fff0c3c73233a78b1effcd
78696bfeb7ac5ae298765bfb9f82cf24d12b7dcc 31-Mar-2017 Felipe Leme <felipeal@google.com> Moar pre-partitioning refactoring.

On ViewState: split value into mCurrentValue and mAutofilledValue.
On Session: replacing mAutofilledDataset by mDatasetWaitingAuth and
ViewState.getAutofilledValue() (mAutofilledDataset is still needed,
but will be removed in the first partitioning CL).

Also fixed a missed 'return' on TimePicker.autofill()

Bug: 35707731
Test: CtsAutoFillServiceTestCases pass

Change-Id: Icc32701ae3e499a77d99e6ae1daa7d070a3df631
utofill/Dataset.java
213eb4f162b55f4ae5efd52aefb7bad5cfe73663 31-Mar-2017 Jason Monk <jmonk@google.com> Add test API for if the device supports QS

Test: cts-tradefed run cts-dev -m CtsSystemUiHostTestCases
Change-Id: Ib2dbbab8c4d0b7bae912f29f417e7e245bfd5b71
Fixes: 36363728
uicksettings/TileService.java
35b9e3015565850e9de963e4bda1be227825df5d 14-Mar-2017 Kang Li <kanlig@google.com> Add a service to rank apps for ResolverActivity.

bug: 30982298
Test: manual - shared images in Camera, texts in Messenger, and webpages
in Chrome.

Change-Id: If335c269ca54145839ad8fd4b3f9b93a74b550f8
esolver/IResolverRankerResult.aidl
esolver/IResolverRankerService.aidl
esolver/ResolverRankerService.java
esolver/ResolverTarget.aidl
esolver/ResolverTarget.java
609edbeb8684446189595f349733df8f141dd687 27-Mar-2017 Jason Monk <jmonk@google.com> Speculative fix for QS CTS test

Explicitly send broadcasts to systemui, because thats where they are
going.

Test: cts
Change-Id: I2fdc74f2cf874e818ef52f37a58adf7cd38ca455
Fixes: 35704517
(cherry picked from commit c7f71110958cbeb4343bd9220fd1526ae066e75c)
uicksettings/TileService.java
c7f71110958cbeb4343bd9220fd1526ae066e75c 27-Mar-2017 Jason Monk <jmonk@google.com> Speculative fix for QS CTS test

Explicitly send broadcasts to systemui, because thats where they are
going.

Test: cts
Change-Id: I2fdc74f2cf874e818ef52f37a58adf7cd38ca455
Fixes: 35704517
uicksettings/TileService.java
28eae8e551f46c0ce6247fcc2d2ace7cccfc922d 22-Mar-2017 Kevin Schoedel <kpschoedel@google.com> 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
r/IVrManager.aidl
24d5893b25ce62b7bc9ed9f35fa72b9d47f23cdd 21-Mar-2017 Felipe Leme <felipeal@google.com> Added a UserManager.DISALLOW_AUTOFILL restriction.

bug: 35710740

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.LoginActivityTest#testUserRestriction
Test: cts-tradefed run commandAndExit cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedDeviceOwnerTest#testDisallowAutofill_allowed
Test: cts-tradefed run commandAndExit cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedProfileOwnerTest#testDisallowAutofill_allowed
Test: cts-tradefed run commandAndExit cts-dev -m CtsDevicePolicyManagerTestCases -t com.android.cts.devicepolicy.MixedManagedProfileOwnerTest#testDisallowAutofill_allowed

Change-Id: I41b2bf9fe3bc8df627c6650960bd11346c430a7e
utofill/AutofillService.java
utofill/Dataset.java
d00fe5a544a28c0f849eee0d4d7aa9b42ab33106 22-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add custom presentation (RemoteViews) on Dataset values."
b70845c708a8c402219f05d26edaea38713e13c3 16-Mar-2017 Steven Thomas <steventhomas@google.com> Revert "Revert "Add remote callbacks for persistent vr mode""

This reverts commit 2abf1c60cc2fc6ec9bc590cb35e94581ecf93c2e.

We need the ability to register remote callbacks for persistent vr mode,
so vr flinger can register for persistent vr mode events.

Bug: 35885165

Test: Manually confirmed vr flinger can register and receive persistent
vr mode events.

Change-Id: I7713c4c8acae9a369fd0c06695ef712fddd12be8
r/IPersistentVrStateCallbacks.aidl
r/IVrManager.aidl
5311206f3434d631c6ea81ab2e76a46ca18119b6 20-Mar-2017 Felipe Leme <felipeal@google.com> Add custom presentation (RemoteViews) on Dataset values.

New tests on LoginActivityTest:

- testAutofillOneDatasetCustomPresentation()
- testAutofillMultipleDatasetsCustomPresentations()
- testAutofillMultipleDatasetsCustomPresentationSameFields()
- testAutofillMultipleDatasetsCustomPresentationFirstDatasetMissingSecondField()
- testAutofillMultipleDatasetsCustomPresentationSecondDatasetMissingFirstField()

Fixes: 36067706
Test: CtsAutoFillServiceTestCases pass

Change-Id: Iacb660bf5a5cf311dea4bfcbfe1b3722aab34715
utofill/Dataset.java
3b1ed1cb3d2939059bd4feec145d2ebb7aa959bd 21-Mar-2017 Jin Qian <jinqian@google.com> Merge "Revert "Add remote callbacks for persistent vr mode""
2abf1c60cc2fc6ec9bc590cb35e94581ecf93c2e 21-Mar-2017 Jin Qian <jinqian@google.com> Revert "Add remote callbacks for persistent vr mode"

This reverts commit 504c6d67d0c2e4cda5201372551914f94acce710.

Change-Id: Ia0f8d508272211736d421cf097abaa0bcbc3abab
r/IPersistentVrStateCallbacks.aidl
r/IVrManager.aidl
de2ea835636e2c6d8c39fd5926dd44867ce43ad7 21-Mar-2017 Steven Thomas <steventhomas@google.com> Merge "Add remote callbacks for persistent vr mode"
c1b59ed73eeea40c70cc81e2ab486cd54d94ed5d 17-Mar-2017 Andrii Kulian <akulian@google.com> Merge "Separate global and override config sent to client"
f619bc5211b4f214e92ef59a023adf006c4f196f 17-Mar-2017 Julia Reynolds <juliacr@google.com> Removing 'delegate' from constant names

Change-Id: I2ac4e3ae08f1084da34ea74fdd5177e2d58987af
Fixes: 35812334
Test: build
otification/NotificationListenerService.java
504c6d67d0c2e4cda5201372551914f94acce710 16-Mar-2017 Steven Thomas <steventhomas@google.com> Add remote callbacks for persistent vr mode

We need the ability to register remote callbacks for persistent vr mode,
so vr flinger can register for persistent vr mode events.

Bug: 35885165

Test: Manually confirmed vr flinger can register and receive persistent
vr mode events.

Change-Id: I28ee7f4e103fc53ae3e5d8e692cb2f6fa7bdbc82
r/IPersistentVrStateCallbacks.aidl
r/IVrManager.aidl
e6ccc3e8165b5e2f81b3f3af8635517bb7cbd1b6 17-Mar-2017 Karthik Ravi Shankar <karthikrs@google.com> Merge "Add API to get compatibility display id"
446079600ece83b22cb91865bcbeb694292b0108 16-Mar-2017 Andrii Kulian <akulian@google.com> Separate global and override config sent to client

There is some flakiness in View#onConfigurationChanged callback -
if ViewRootImpl receives config update earlier than ActivityThread,
it may not detect the configuration change and skip inner updates.
Also now ViewRootImpl assumes that it receives the global config as
a param, but instead it gets merged config from WM. This means that
ViewRootImpl#sConfigCallbacks was sending incorrect values to the
recipients.

This CL switches to sending global and override configuration to the
client separately. Also in case if there is a corresponding activity,
it first updates it and waits for update callback to ViewRootImpl.
This way global config and override config for activity will always
be set first and resources will be updated before inner state of
ViewRootImpl is updated.

Bug: 35870157
Bug: 34164473
Test: android.server.cts.ActivityManagerDisplayTests
Test: testOnMovedToDisplayCallback
Change-Id: Ic9e7541cf25ecfac6ec90e48f7efb0ece91f657e
allpaper/WallpaperService.java
fe4e6a219a072e844f65b7722531307a039a2d63 16-Mar-2017 Felipe Leme <felipeal@google.com> Temporarily removed check for null requiredIds on SaveInfo builder.

Bug: 36076444
Test: manual verification
Change-Id: I8fc5ef537d229d9eda78d458a71d85ac69440c94
utofill/SaveInfo.java
2ac463e3f5c3b757ecbc7e30e0fc1e8e0d878272 13-Mar-2017 Felipe Leme <felipeal@google.com> Allow users to manually request Autofill.

- Added a requestAutofill(view,flags) method, that when passed with
FLAG_MANUAL_AUTOFILL triggers a manual request.
- Added same method for virtual views
- Overloaded existing AutofillService request methods to take a flag.
- Added an AUTOFILL context menu option on TextViews.
- Added a canRequestAutofill() that is used to enable the context menu.

BUG: 35708229
Test: manual verification
Test: existing CtsAutoFillServiceTestCases pass
Test: android.autofillservice.cts.LoginActivityTest#testManualAutofill pass

Change-Id: I1a64d40da3373774451d178b1cabf20f11120e9d
utofill/AutofillService.java
utofill/FillCallback.java
utofill/FillResponse.java
utofill/IAutoFillService.aidl
utofill/SaveInfo.java
82e3793c15298f9c62edee23259c116606f10911 10-Mar-2017 Felipe Leme <felipeal@google.com> Decouple Dataset ids from SaveInfo.

The FillResponse was automatically adding the AutofillId of all Datasets to
the SaveInfo object, but that would cause problems when the AutofillService
is not able to save some data (for example, if it comes from a read-only
backend).

Bug: 36076444
Test: OptionalSaveActivityTest pass
Test: m update-api
Change-Id: I1d5faaddf29e1be0f357438c8485e07caf975293
utofill/Dataset.java
utofill/FillResponse.java
utofill/SaveInfo.java
104b932b7b84e4d4dda51b187615d79e2559ebca 14-Mar-2017 Felipe Leme <felipeal@google.com> Fixed obsolete TODOs.

Test: not needed
Bug: 35395043
Bug: 26742218

Change-Id: I0e5adb574610374055a6546b66529a7aed7cc413
utofill/AutofillServiceInfo.java
43818a73eb535ba462ef7a56ffc3ab37e77c2ea0 11-Mar-2017 Felipe Leme <felipeal@google.com> Temporarily re-added addSavableIds() with AutoFillId.

Bug: 35727295
Test: manual verification using client using old API
Change-Id: I5589c5e38c11fc4d2a04df6c540a8cded6475ac4
utofill/SaveInfo.java
3a47ec2edd04546d82ba1df331c7af778858a281 09-Mar-2017 Karthik Ravi Shankar <karthikrs@google.com> Add API to get compatibility display id

Add an API to get the compatibility display ID from CompatibilityDisplay
in the framework.

Testing Done: Compiled, built and used this API from ActivityManager and
it works.

Bug: 36071574
Change-Id: Ie4d1eb6a6befa7dbc3413519de20e2762529079d
Signed-off-by: Karthik Ravi Shankar <karthikrs@google.com>
r/IVrManager.aidl
640f30a7763b0a4b80c767acb84c740aac04768b 07-Mar-2017 Felipe Leme <felipeal@google.com> Replaced auto-fill by autofill to keep it consistent with API style.

This change will affects 2 types of apps: autofill service implementations
and apps that use autofill APIs.

Since just the former is known to be used at the moment, we're not trying
to keep backward compatibility with the latter.

Bug: 35956626
Test: CtsAutoFillServiceTestCases pass
Test: android.provider.SettingsBackupTest pass

Change-Id: Ia720083508716deae9e887f9faa7ae7c5a82f471
utofill/AutoFillService.java
utofill/AutoFillServiceInfo.java
utofill/AutofillService.java
utofill/AutofillServiceInfo.java
utofill/Dataset.java
utofill/FillCallback.java
utofill/FillResponse.java
utofill/SaveCallback.java
utofill/SaveInfo.java
6ee1ed48b583971915759ce8f6e506168f4dfa78 08-Mar-2017 Felipe Leme <felipeal@google.com> Removed deprecated setSavableids().

Bug: 35727295
Test: LoginActivityTest#testAutoFillOneDatasetAndSave passes

Change-Id: I33a33bf438fe258685025118a3dfa8a59bd456da
utofill/FillResponse.java
5048c1cbb1aee30ba06f9bfd851fa89d26677f63 03-Mar-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fill-provider can control the negative button label and listener"
33d06fcac5abdded783d1b59f5b299ca5d27d5c7 01-Mar-2017 Svet Ganov <svetoslavganov@google.com> Fill-provider can control the negative button label and listener

Test: New CTS tests added and all autp-fill tests pass

bug:35869744

Change-Id: I55e5938038e612d728498658a763208f7022f85a
utofill/FillResponse.java
utofill/SaveInfo.java
7ad11281378a1248c08c703b14cfc681e37cac1b 28-Feb-2017 Svet Ganov <svetoslavganov@google.com> Allow auto-fill services to disable themselves

1. Added a new API for a connected auto-fill service to
disable itself

2. Added a new shell command to destroy all pending sessions
which is used in CTS tests

3. Fixed a bug where the unbind timeout was in minutes
instead of seconds

Test: wrote CTS tests, all auto-fill tests pass

bug:35848030

Change-Id: I681605aa0b8c004a0f14e30b57117c291d89a894
utofill/AutoFillService.java
utofill/IAutoFillService.aidl
utofill/IAutoFillServiceConnection.aidl
d43a7ab3a22fa7acdb3fd86f74c7b7c607cd62c4 02-Mar-2017 Jason Monk <jmonk@google.com> Add API to indicate which tile was long-clicked.

Test: make
Change-Id: I5ff5a3ed954e231b6d63e02bf64bfe771cd78b0f
Fixes: 34832801
uicksettings/TileService.java
a11d0b18ec9275ed8d633e4508074226b7372474 16-Feb-2017 Julia Reynolds <juliacr@google.com> Api review feedback.

Change-Id: I4628fcec43ec5dbacd208401d9ace2dbe658da64
Fixes: 35812235
Fixes: 35812334
Fixes: 35812179
Test: make
otification/ConditionProviderService.java
otification/NotificationListenerService.java
otification/StatusBarNotification.java
b72f012cb49a5930010fb0766776b40c2955ee3e 24-Feb-2017 Felipe Leme <felipeal@google.com> Added customization to SaveInfo.

Bug: 35727295
Test: CtsAutoFillServiceTestCases pass
Test: m update-api

Change-Id: I7eba36b6ab8181ae1cdbd10b0879927b9f9cf086
utofill/FillResponse.java
utofill/SaveInfo.java
3b57462a8614db70efa6398c97ad578ed231e6eb 25-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Refactored savableIds() into a SaveInfo class."
f69761ffbe3098067ae720263ef05262f4b5d41e 24-Feb-2017 Felipe Leme <felipeal@google.com> Refactored savableIds() into a SaveInfo class.

For now it's a "1-to-1" refactoring that keeps the same
functionalities, but soon SaveInfo will be expanded to
allow the AutoFillService to customize it.

Bug: 35727295
Test: CtsAutoFillServiceTestCases pass
Test: m update-api

Change-Id: I5aaa705be2b32590048f70ed0142437e05df94b7
utofill/FillResponse.java
utofill/SaveInfo.aidl
utofill/SaveInfo.java
5098977b20699c2ed32a621524abd5a1b2ab7de4 23-Feb-2017 Julia Reynolds <juliacr@google.com> Change time methods to durations.

Test: cts, cts verifier, runtest systemui-notification
Change-Id: Ia612f59e91f3a3e1de14cd7217fe18ecaf61033c
otification/NotificationListenerService.java
eb49515abd2353f32e0eb7b3964847c6399986c9 22-Feb-2017 Svet Ganov <svetoslavganov@google.com> Move the presentation view to proper location.

Test: Auto-fill tests pass

bug:33550221

Change-Id: I041a084800e761859c67b962fb4aefafce8956d8
utofill/Dataset.java
utofill/FillResponse.java
fe35e69d964dbd09cc8e6390e41ca9347baea108 21-Feb-2017 Felipe Leme <felipeal@google.com> Use ArrayList instead of ArraySet for FillResponse.getDatasets()...

...otherwise it might not preserve the order.

Test: manual verification
BUG: 35348724

Change-Id: Ib19d364253ea4f0cbbeca8a73b08800482e74820
utofill/FillResponse.java
00c771dc7d8242362f1491ae4ce3efd641235b36 19-Feb-2017 Svet Ganov <svetoslavganov@google.com> Add support for remote views backed auto-fill UI

Test: CTS and manual

Change-Id: Ia09f0208d78439491052e4886a0e71c387b73370
utofill/Dataset.java
utofill/FillResponse.java
6f781be91ecc1c894a4ac20eaabd8c65026d225b 18-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Minor improvements to help diagnose auth workflow."
6955665c7381d9901449031984e1109a607a5355 18-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add escrow token APIs to TrustAgentService Security review: b/31273740 Design doc: go/auto_login Test: manual Change-Id: Ib11d4146135a58f1dc451ae8e081977a8f8e6ace"
12054fdc87ee817a7029c4f5a1c3a8fc3447bf1d 17-Feb-2017 Julia Reynolds <juliacr@google.com> Merge "Hide incomplete feature."
d633f072552815301a559520a1f93eb7e79ba319 14-Feb-2017 Felipe Leme <felipeal@google.com> Minor improvements to help diagnose auth workflow.

BUG: 35348724
Test: CtsAutoFillServiceTestCases passes

Change-Id: I6ad3320faca8eed329b2cc4836281a547f57456a
utofill/Dataset.java
utofill/FillResponse.java
1327d3c3fabc9b4ffeb20e589f7b2350567b681f 17-Feb-2017 Julia Reynolds <juliacr@google.com> Hide incomplete feature.

Test: make
Change-Id: I505a8ee2f2fbdb574f607005579832951f28022a
otification/Adjustment.java
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
otification/SnoozeCriterion.java
b047b8bd7e363081e91ba6cbc8d09cd355624584 09-Feb-2017 Andrii Kulian <akulian@google.com> Report move to display for activities that handle config changes

When activity that is moved between displays handles all configuration
changes, it won't be restarted. This CL adds a callback to the client
to notify it about display change. Usually it will be followed by
onConfigurationChanged, except when configuration didn't actually change.
When activity is recreated, it won't receive onMovedToDisplay.

Bug: 34862802
Test: android.server.cts.ActivityManagerDisplayTests
Test: #testOnMovedToDisplayCallback
Change-Id: I9a9501cab788623ada15a31efb53e4b2378639fe
allpaper/WallpaperService.java
93a145f6880f71332b8288774671392259a9b6df 24-Jan-2017 Lingjun Li <lingjunl@google.com> Add escrow token APIs to TrustAgentService
Security review: b/31273740
Design doc: go/auto_login
Test: manual
Change-Id: Ib11d4146135a58f1dc451ae8e081977a8f8e6ace
rust/ITrustAgentService.aidl
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
4dba3cdf89c43d5c7f72eb57100d2f5b405bdad3 14-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Refactor auto-fill"
782043caf81055aa1c331e9cc15b24a10e1bf17a 11-Feb-2017 Svet Ganov <svetoslavganov@google.com> Refactor auto-fill

* Fix a layering issue where auto-fill manager which is in view
depended on activity which is in app

* Moved auto-fill classes to view or service based on their
purpose and removed dependecy on the classes in view to the
classes in service

* Push state to local auto-fill manager whether auto-fill is
enabled to avoid making IPC for every focus transition if
the user did not enable the feature

* Remove unnecessary offload to messages when handling calls
to auto-fill manager service as these are made over a oneway
interface and in general they do almost no work and typically
we do these on the binder thread

* Removed id from data set and fill response as the provider
can embed everything it needs to id them in the auth pending
intent

* Enforce the auth UI to be only an activity as this will work
with multi-window, recents, and back and also does not require
draw on top of other app special permission

* Authentication also no longer requires passing a remotable
callback to the auth activity but the activity handles the
request as if called for a result

* Handling stopping of a user to clean up in-memory state as
well as handling when a user gets unlocked as a provider may
be non-direct boot aware

* User the correct context when creating an auto-fill manager

* Move the receiver that listens for requests to hide system
windows to the manager service as the UI is a singleton and
no need every per-user state to register its own

* Removed extras from dataset as the only case a provider needs
to associate state with a dataset is for auth and the provider
can embed this data in the auth pending intent

Test: manual and CTS

Change-Id: I4bc54c13cf779d7f6fdb3ab894637f9fac73f603
utofill/AutoFillService.java
utofill/Dataset.aidl
utofill/Dataset.java
utofill/FillCallback.java
utofill/FillResponse.aidl
utofill/FillResponse.java
utofill/IAuthenticationCallback.aidl
utofill/IAutoFillAppCallback.aidl
utofill/IAutoFillManagerService.aidl
utofill/IFillCallback.aidl
utofill/SaveCallback.java
8347163dbb64fb61012c0393163283106a0a351e 13-Dec-2016 Winson Chung <winsonc@google.com> Create a new stack for the assistant activity.

- Add a new stack that is not resized with multiwindow, and
appears above the fullscreen and docked stacks, but below
the pinned stack
- Add a method on VoiceInteractionSession to allow the assistant
to launch activities into this new fullscreen stack.
- Also prevent any activities in the assist stack from the
fetching of the on screen assist data.

Bug: 30999386
Test: android.server.cts.ActivityManagerAssistantStackTests

Change-Id: I22ab7629b5f758cf1e66d7d1c26648af6bc887c9
oice/VoiceInteractionSession.java
ef0c1885cb9aa62dc2d2eee2849d103b32271133 10-Feb-2017 Svet Ganov <svetoslavganov@google.com> Move auto-fill shell command off IPC

Auto-fill has a shell command that is useful for development
which is currently exposed as a remote method allowing any app
to call it reflectively. Since only case this method is called
is when handling a shell command there is no need to expose it
to IPC over binder.

Test: manual

Change-Id: Iac20b4a39c7065e254f8aa277d1f2fd1c38b24a8
utofill/IAutoFillManagerService.aidl
660ea8c6d7b18ad84d797f5746aec9db4fa3ecba 09-Feb-2017 Felipe Leme <felipeal@google.com> Merge "Guarded access to mCallback and check for null before using it."
4997c505c9b6379961ede3b6eef75e3b60f283ac 08-Feb-2017 Felipe Leme <felipeal@google.com> Guarded access to mCallback and check for null before using it.

Fixes: 35143142

Test: manual verification
Test: CtsAutoFillServiceTestCases passes
Change-Id: I465538b896b617c518949611f963e350ee498f7b
utofill/AutoFillService.java
a0e468ac3358583ae34db510fe2fc33c832eb29a 09-Feb-2017 Yohei Yukawa <yukawa@google.com> Merge "Avoid sync IPCs from TSMS to SpellCheckerService"
59da805846034a4939b014f469d7383285c75aab 07-Feb-2017 Dianne Hackborn <hackbod@google.com> Add new VoiceInteractionSession.setUiEnabled method

This allows the session to turn off all of its UI. Use it
in onCreate() to prevent the session from ever creating any
of its UI. Switched the window creation and initialization to
happen lazily to support this.

Test: New test added to android.assist.cts.LifecycleTest
Bug: 30999386

Change-Id: I8eacb3697c8ac9908c50b9577abea2d20597b016
oice/VoiceInteractionSession.java
7fa65eef203c4ed3ce00ddef96ccf311d3bfb58c 08-Feb-2017 Yohei Yukawa <yukawa@google.com> Avoid sync IPCs from TSMS to SpellCheckerService

Currently, TextServicesManagerServices uses an AIDL interface called
ISpellCheckerService when binding to a spell-checking service.
However, this interface uses synchronous (blocking) binder calls
rather than asynchronous (oneway) calls. As a result, there are
situations where the system process has made a blocking binder call
into untrusted application code from its main looper thread.

As general policy, the system process must never allow its looper
threads to block on application code.

This CL addresses the above issue by converting ISpellCheckerService
into oneway interface, which instead takes a result receiver
ISpellCheckerServiceCallback so that spell-checking services can
return results asynchronously.

Note that the above protocol issue was also the root cause of
Bug 5471520. Hence we can also logically revert the previous CL [1]
for Bug 5471520.

[1]: Iedf2c2cdd8d4834545d06d72ade3ce211b104b1d
4e713f14419a37f385cf1509b011982bdcf67edc

Test: Ran `adb shell dumpsys textservices` to check the
"Spell Checker Bind Groups:" section in the following three
steps.
1. Before apps start requesting spell checker sessions.
2. While apps are owning active spell checker sessions.
3. After all the apps that owned spell checker sessions are
gone.
Made sure that spell checker service is not running when
there is not spell checker bind group.
Bug: 7254002
Change-Id: I92e7aa40dc9ea14f67d355f0bfa15325b775d27b
extservice/SpellCheckerService.java
bab851c7c9dfe6f3d063a1009c4d57cfa2ff005c 04-Feb-2017 Felipe Leme <felipeal@google.com> Refined session management so Save can be automatically called.

This is yet another big refactoring:

- AutoFillManager keeps track of its current AutoFillSession.
- Views call AFM.startSession(View) when they can trigger autofill.
(virtual views can call it as well). At this point, the manager
sets an AutoFillSession, gets the activity token, and passes it to
the service.
- Subsequent calls to AFM.start() will be ignored since the session
is set.
- When the Activity is gone, it calls AFM.finishSession().
- Simlilarly, virtual views could call it as well.
- Added getAutoFillValue() to View.
- Removed AFM.updateAutoFillInput(childId): virtual views should now
call startSession(childId) to start a session, and use the
VirtualViewListener callbacks for updates.
- Change AutoFillValue to use String (which is immutable) instead of
CharSequence for text values.
- Check if view is enabled before auto-filling.
- Removed 'cmd autofill fill' since it would require the appCallback
- Automatically dismiss the snack bar after 30s
- Moved the "don't change autofill value when autofilling" Inception
logic into the service side.
- Etc...

BUG: 34819567
BUG: 33269702
BUG: 31001899

Test: manual verification
Test: CtsAutoFillServiceTestCases passes

Change-Id: I5fad928d4d666701302049d142026a1efa7291cd
utofill/AutoFillService.java
utofill/IAutoFillAppCallback.aidl
utofill/IAutoFillManagerService.aidl
792e43cbe8f661f682a5428ca33d48bc2155138e 06-Feb-2017 Jason Monk <jmonk@google.com> Merge "Add tile information to ACTION_QS_TILE_PREFERENCES intent" am: ff1d8da55e am: 74a8b6543f am: a8e10e5f20
am: 6e8c039e24

Change-Id: If9ed9697cc042375abd3d77b1eb4020d2798f96c
a8e10e5f2069ec513cf732ac72e64844e92bbd47 06-Feb-2017 Jason Monk <jmonk@google.com> Merge "Add tile information to ACTION_QS_TILE_PREFERENCES intent" am: ff1d8da55e
am: 74a8b6543f

Change-Id: If195ccf536a45ef21e8ee70547ea76e26732c583
85a05cd9b5945c42f46ce1bcacb2d1e0aa8c7a44 06-Feb-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Refactoring of auto fill - lifecycle, auth, improvements"
8d2e9a9b304f06a13f949d5eb1951f63fbba2cbb 24-Jan-2017 Akira Oshimi <akira.x.oshimi@sonymobile.com> Add tile information to ACTION_QS_TILE_PREFERENCES intent

One application can provide two or more custom Quick Settings tiles.
But there is no way to know which tile is long-pressed from application
side because ACTION_QS_TILE_PREFERENCES intent that is sent when
long-pressed doesn't have any additional information. So the component
name and state of the tile should be added to the intent.

Bug: 34832801
Test: manual - long press a custom tile

Change-Id: Iaa884cd944f19a2f007cbde645e8f8b1198bffb7
uicksettings/TileService.java
0f4928f1f73407485d6d94beda1dba1a2360ebbf 03-Feb-2017 Svet Ganov <svetoslavganov@google.com> Refactoring of auto fill - lifecycle, auth, improvements

1. Move management of the remote fill service in a dedicated
class that abstracts away the async and ephemeral nature
of the binding.

2. Update auth to move fingerprint out of the platform and
allow response and dataset auth.

3. Cleaned up the fill and save callback classes.

4. The UI is now shared among all sessions and cleaned up.

5. Reshuffled the remote callbacks to have cleaner separation.

6. Cleaned up and tightened the reponse and dataset classes.

7. Added API to support communicationn with intent based auth.

Test: CTS + manually

bug:31001899

Change-Id: Idc924a01d1aea82807e0397ff7293d2b8470d4d6
utofill/AutoFillService.java
utofill/AutoFillServiceInfo.java
utofill/CallbackHelper.java
utofill/FillCallback.java
utofill/IAutoFillAppCallback.aidl
utofill/IAutoFillServerCallback.aidl
utofill/IAutoFillService.aidl
utofill/IFillCallback.aidl
utofill/ISaveCallback.aidl
utofill/SaveCallback.java
56345f4bfef7c0807b777a1da31160e0ab5d2aa6 26-Jan-2017 Zak Cohen <zakcohen@google.com> Introduces VrManager as a system service.

Provides access to persistent VR mode as used by VR viewer when a device
is believed to be inside a viewer.

Bug: 34736524
Test: Built, run using build of vr services that enables mode.
Change-Id: I6ff392f09adb8e4bd522dacbd064777bba836282
r/IVrManager.aidl
5523f9a2fcaf472e92c1d380a79776c4bf857a80 02-Feb-2017 Felipe Leme <felipeal@google.com> Merge "Improved AutoFill Save workflow."
0200d9ea1509089c0c03b7071aa271e3a9b35c11 25-Jan-2017 Felipe Leme <felipeal@google.com> Improved AutoFill Save workflow.

Currently, the onProvideAutoFillStructure() methods can be called
twice: to auto-fill an activity and to save the activity's data
in the service.

The problem with this approach is that when the save workflow is
called, the activity might have been gone. Hence, a proper approach
is to keep the initial AssistStructure data in the system_service
memory, watch for view changes, and then passed the new structure
back to the AutoFillService.

A side effect of this change is that we need another way to determine
if the view is sanitized or not. For "standard" views, that will be
defined based on whether the view content come from a resource or not,
but that logic is not implemented yet (for now, all views will be
considered sanitized, except for TextView passwords). For "custom"
views (such as WebView), this logic is responsibility of the view
implementation, through the newChild() method, which now takes a
flag (whose value could be AUTO_FILL_FLAG_SANITIZED for sanitized
views).

The SaveCallback.onSuccess() method was simplified: it does
not need a list of saved ids anymore the auto-fill UI will not use it
anymore.

Another side effect is that the Save notification is gone - until
it's attached again, it can be test by using:

adb shell cmd autofill save

Finally, hook AutoFillUI on ACTION_CLOSE_SYSTEM_DIALOGS events.

BUG: 33269702
BUG: 31001899
Test: manual verification
Test: CtsAutoFillServiceTestCases passes
Change-Id: I907a7e21d1b3cd1ab6dec3a08d144a52655da46f
utofill/AutoFillService.java
utofill/IAutoFillManagerService.aidl
utofill/IAutoFillServerCallback.aidl
utofill/IAutoFillService.aidl
utofill/SaveCallback.java
oice/VoiceInteractionSession.java
a33f5c4312ce708933454dfd1b154ccc46be099c 31-Jan-2017 Julia Reynolds <juliacr@google.com> Deprecate notification fields

And move references to the deprecated fields to
NotificationRecord for testability.

Test: runtest systemui-notification
Change-Id: If3910dc78297ad66679b1efa380315127261a018
otification/StatusBarNotification.java
ceecfcf5ccd4790f9ab3a08c3cb7ce4baa2c1eb1 31-Jan-2017 Julia Reynolds <juliacr@google.com> Remove unneeded parameters

Test: cts-verifier
Change-Id: Ifaddd71aa44898c7c16f28f1715fd035861e3be6
otification/INotificationListener.aidl
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
bd00fef41ce38d2c711bd4151997c1cd8964b712 25-Jan-2017 Felipe Leme <felipeal@google.com> Moar AutoFill Framework refactoring...

* Encapsulated application-level auto-fill logic on AutoFillSession.
Currently, Activity.java directly manages the IAutoFillCallback binder
object used to auto-fill its views, but this logic need to be
extended so Views can use it to draw the auto-fill bar.

* Pass auto-fill id and boundaries to requests
So AutoFillUI can display its affordance in the right places.

* Uses a new auto-fill id on View (instead of reusing accessibility's).
That allows moving the logic on whether a new request should be made or
the existing UI moved to the service side.

* Split service methods in 2, for shell cmd and app
And applied the right permission check on both.

* Removed CancelationSignal from onSaveRequest()
Since it's not really needed.

* Etc...
¯\_(ツ)_/¯

BUG: 34637800
BUG: 31001899
Test: CtsAutoFillServiceTestCases passes
Test: manual verification

Change-Id: Ibd0cb2cfff6d0f6bb6b697a423ed5e89df687b82
utofill/AutoFillService.java
utofill/IAutoFillAppCallback.aidl
utofill/IAutoFillManagerService.aidl
utofill/IAutoFillServerCallback.aidl
utofill/IAutoFillService.aidl
utofill/SaveCallback.java
0ce4b0e4c31a65864e0cda3c9d3fb6fe8a40f2ed 26-Jan-2017 Elliot Waite <elliotwaite@google.com> Fix @links in reference docs. am: 54de77470d am: ab978c035e am: 28ba4722a9
am: 9b21265b2c

Change-Id: If246ebdb36cf2832d5a6c42cbe752e290b6fb6e8
28ba4722a9e77ce98de454ed2ac862e44f496632 26-Jan-2017 Elliot Waite <elliotwaite@google.com> Fix @links in reference docs. am: 54de77470d
am: ab978c035e

Change-Id: If0d0613362e0ea95cf48eaf9a16d3eea48b589ea
54de77470de4f605eef7f4b4e01718b301fe275e 12-Jan-2017 Elliot Waite <elliotwaite@google.com> Fix @links in reference docs.

Change-Id: I40cea46efd80c448640ff69753698fe8404da40b
arrier/CarrierService.java
otification/NotificationListenerService.java
436ab6a91d64ef6036c67bb361d807e398fb2c4c 15-Dec-2016 Felipe Leme <felipeal@google.com> Added support to authentication.

AutoFillService can now require user authentication, both at
FillResponse and Dataset levels;
- FillResponse authentication is typically used when the user data
need to be unlocked before the first use.
- Dataset authentication is typically used to unlock sensitive data
such as credit card info.

The authentication can be handled by the service itself (for example,
when it uses the credit card CVV to unlock it) or by the Android
system (when the service asks for fingerprint authentication).

Bug: 31001899

Test: manual verification
Test: CtsAutoFillServiceTestCases passes

Change-Id: If62f42f697ab5ef0d14d991ff1077d1c38808e61
utofill/AutoFillService.java
utofill/CallbackHelper.java
utofill/FillCallback.java
utofill/IAutoFillAppCallback.aidl
utofill/IAutoFillServerCallback.aidl
utofill/IAutoFillService.aidl
utofill/SaveCallback.java
000f7cd646f016febb4d90ae19a697ae548025e2 25-Jan-2017 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Initial IME integration."
e7beedff6e02cf11bce748d1aa73c848c53bbccd 25-Jan-2017 Rubin Xu <rubinxu@google.com> Merge "Add unit tests for LockSettingsService"
717ca4b07deaea5b9ae2402d3dd87c1592f634f7 25-Jan-2017 Julia Reynolds <juliacr@google.com> Merge "Allow notifications to be autocanceled at a time."
2a128746b3466e75b6040147fa831fe12cc2ccbb 28-Nov-2016 Julia Reynolds <juliacr@google.com> Allow notifications to be autocanceled at a time.

Test: cts
Change-Id: I24ebcab2c0fa2028ec5d2984dc3b7ec19391b590
otification/NotificationListenerService.java
3461d3c069468e176fab6bc8b8e78c8e6bc81e8b 19-Jan-2017 Felipe Leme <felipeal@google.com> Initial IME integration.

- Created an AutoFillManager class, which provides methods to show
the auto-fill bar for views and virtual nodes.
- Automatically launches an auto-fill request when the IME is shown
(and an AutoFillService is set for the given user) on TextViews.
- Updated VirtualNodeListener to use this new API.

BUG: 31001899
BUG: 34171325
Test: CtsAutoFillServiceTestCases passes
Test: manual verification

Change-Id: Id72ce97da70217081b5823cfc7b138412634fcf3
utofill/AutoFillService.java
utofill/FillCallback.java
utofill/IAutoFillManagerService.aidl
utofill/SaveCallback.java
b04c54fdb38934ace2e1e5ad1141530b3582ee52 25-Jan-2017 Jason Long <jasonlong@google.com> Merge "Define contract for AutoFillServiceInfo more precisely."
cf63ff1532e793560f62e1c75f3402b48b0f09ba 24-Jan-2017 Julia Reynolds <juliacr@google.com> Snoozing API changes

- No one can snooze for an undetermined amount of time
- Only the assistant can unsnooze
- Listeners can retrieve a list of snoozed notifications

Test: runtest systemui-notification, cts verifier
Change-Id: Idfaee6d8bc15a5d41630f86f7e852468b07dc7d0
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
c121dda89a0df1c174d63fa9c50f8924365fefe4 22-Jan-2017 Jason Long <jasonlong@google.com> Define contract for AutoFillServiceInfo more precisely.

Change-Id: I295dec0c7318eecdceb962df9c0d888d12e9b654
Bug: 31001899
Test: Manual
utofill/AutoFillServiceInfo.java
0cbc19e4a66f7db51596b57ca91afc6f5b27f3b4 09-Dec-2016 Rubin Xu <rubinxu@google.com> Add unit tests for LockSettingsService

Add infrastructure and first sets of unit tests for LockSettingsService

Bug: 33126408
Test: runtest frameworks-services -c com.android.server.LockSettingsServiceTests
Change-Id: I4f3b7f6eaef7122f72b06bd11ce49134a093fe35
atekeeper/GateKeeperResponse.java
924eed1ca6d3fec5dae7eb0f9c11b8f23f628697 19-Jan-2017 Julia Reynolds <juliacr@google.com> Add updatable fields to Ranking

- NotificationChannel
- Badging

Test: runtest systemuinotification & cts

Change-Id: I7fd1f2dc06148927e9a4bd5b760d436e2c5e8a98
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
otification/StatusBarNotification.java
327323d2b337077433fe02438a79cc98e91799e3 12-Jan-2017 Zachary Iqbal <zacharyi@google.com> Added an onDeviceUnlockLockout callback to TrustAgentService.

Test: Manually tested onDeviceUnlockLockout being called with an actual
TestAgentService implementation.

Notes:
- Active Trust Agents are no longer killed/unbinded from when a temporary
device lockout occurs. Instead, the onDeviceUnlockLockout callback of
the agent is called.

Change-Id: Ifa0984d1d7e5153568334d736e9ebd5a00ef1297
Bug: 34198873
rust/ITrustAgentService.aidl
rust/TrustAgentService.java
4b93f46130ab9a972773ebf2be9839109d5c6a08 18-Jan-2017 Jason Long <jasonlong@google.com> Add <autofill-service> that declares AutoFillService metadata.

The initial version of <autofill-service> may contain a settingsActivity
attribute.

Test: Manual verification
Change-Id: I63a67aa4b7110fbf21d0b01ee53add712bfb0364
utofill/AutoFillService.java
utofill/AutoFillServiceInfo.java
7967230de20aeb6993d8332347752c8e508769e4 12-Jan-2017 Julia Reynolds <juliacr@google.com> Send Snooze callback for Assistant

On selection of a snooze context SnoozeCriterion.

Test: runtest systemui-notification & make cts-verifier
Change-Id: Iaca567100c29295fbbf1d327195a114106909652
otification/Adjustment.java
otification/INotificationListener.aidl
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
6d553874bed06280766ae24ea605f9bbde3f5a4a 09-Dec-2016 Felipe Leme <felipeal@google.com> YAMAFFR - Yet Another Major AutoFill Framework Refactoring

- Explicitly split View methods into Assist and AutoFill methods, rather
than use an overloaded method that takes flags.
- Simarly, renamed ASSIST_FLAG_SANITIZED_TEXT and
ASSIST_FLAG_NON_SANITIZED_TEXT flags to
AUTO_FILL_FLAG_TYPE_FILL and AUTO_FILL_FLAG_TYPE_SAVE respectively.
- Created a AutoFillUI class to host the auto-fill bar and other UI
affordances.
- Moved the temporary notifications to AutoFillUI (eventually that
class will host the real UI).
- Moved FillData to android.app.view.autofill package.
- Split IAutoFillCallback in 2 (IAutoFillAppCallback and
IAutoFillServerCallback, residing at the app and system_server
respectively), so service cannot fill the app directly (which lets
the framework control the UI).
- Moved assist's IResultReceiver to AutoFillServiceImpl so
system_server can act as a mediator between the AutoFillService
implementation and the app being auto-filled.
- Replaced FillData and FillableInputFields by a bunch of new objects:
- FillResponse contains a group of Datasets, each representing
different values
that can be used to auto-fill an activity (for example, different
user accounts), optional id of fields the service is interested
to save, and an optional bundle for service-side extras.
- Dataset contains a name, Fields, and an optional bundle for
service-side extras.
- Fields contain an AutoFillId (parcelable) and a value (Bundle)
- Changed the temporary notifications to emulate the new workflow:
- Initial notification requests the auto-fill data but do not
auto-fill.
- Once service calls back, a new notification is shown with the
results.
- Then if the user selects a dataset, the activity is auto-filled
with it.
- It also shows a notification to emulate what can be saved.
- Created an VirtualViewDelegate for views that uses a virtual
hierarchy for assist data.
- Added new methods on ViewStructure to add children with virtual ids.
- Added 2 methods on View to support auto-fill:
- autoFill(Bundle) to auto-fill the view.
- getAutoFillType() to return how the view can be auto-filled.
- AutoFillType defines the input fields that support auto-fill:
- Text fields (like EditText)
- Toggle fields (like CheckBox)
- Lists (like RadioGroup)
- AutoFillType can also have a sub-type representing its semantic (for
now only text fields have it, and it's the same as getInputType()).
- etc :-)

Bug: 31001899
Test: manual verification
Change-Id: I2dd2fdedcb3ecd1e4403f9c32fa644cb914e186f
utofill/AutoFillService.java
utofill/FillCallback.java
utofill/FillableInputField.java
utofill/IAutoFillAppCallback.aidl
utofill/IAutoFillCallback.aidl
utofill/IAutoFillManagerService.aidl
utofill/IAutoFillServerCallback.aidl
utofill/IAutoFillService.aidl
utofill/SaveCallback.java
4b82f6ddb0a771ce846724385aaa1d0ff8389449 04-Jan-2017 Julia Reynolds <juliacr@google.com> Wait 100 ms for assistant response before posting.

Test: make cts-verifier
Change-Id: Idf04c2d24f02a32634e2308da6d1599c9ea29bd4
otification/NotificationAssistantService.java
22faa73586fb0d8d41764f12c49e06732ad32fc3 29-Dec-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset. am: a9437bd1ca am: 2ce5c4320d am: 133ff4d611 am: 00a581f882 am: e5156ec1e9 am: 9a47fa7fc0 am: 8bcdab7e6f am: dd7837c5ad am: 9bc2d6b446
am: 08ea823955

Change-Id: I1526deabd38ef8ecbb841a7029b9539bb5f3aefc
9bc2d6b446cb264601479683d7edf6d60a6c818b 29-Dec-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset. am: a9437bd1ca am: 2ce5c4320d am: 133ff4d611 am: 00a581f882 am: e5156ec1e9 am: 9a47fa7fc0 am: 8bcdab7e6f
am: dd7837c5ad

Change-Id: I2124f52b38314199950d1448cddd2bbd328c85ce
dd7837c5ad947b3a423423b622e1cc38b8fb5c86 29-Dec-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset. am: a9437bd1ca am: 2ce5c4320d am: 133ff4d611 am: 00a581f882 am: e5156ec1e9 am: 9a47fa7fc0
am: 8bcdab7e6f

Change-Id: I6e41bfad4ce66ca80bca636a5fb4ddc85b71e83a
8bcdab7e6f334a653d8a04a7c0c411a3c3860904 29-Dec-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset. am: a9437bd1ca am: 2ce5c4320d am: 133ff4d611 am: 00a581f882 am: e5156ec1e9
am: 9a47fa7fc0

Change-Id: Ifb9f5b177f7c031352e6e9cf308e6295f7c60074
00a581f882ea77f4bb489637ed072bd17371255c 29-Dec-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset. am: a9437bd1ca am: 2ce5c4320d
am: 133ff4d611

Change-Id: I54b163f645f561243aac3df1a55c1023531997b3
133ff4d611ca5cc0227ae9d4bc73c61329b14d3a 29-Dec-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset. am: a9437bd1ca
am: 2ce5c4320d

Change-Id: I29339a634fd22cd46bfc08619464da8fe159a2b7
d5261e1d0afd04c01c73636be7392d65959446eb 19-Dec-2016 Julia Reynolds <juliacr@google.com> Use userid of sender, not notification target.

When trying to find a package.

Bug: 33178040
Test: manual, ./vendor/google/tools/fake-ota on
Change-Id: I0b69c37f16e7e1763bff4df1650911fe3435bc77
otification/StatusBarNotification.java
a9437bd1caeeb38780d920a81bde8cc7ca280fe0 24-Nov-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset.

Avoid potential race condition between FRP wipe and write operations
during factory reset by making the FRP partition unwritable after
wipe.

Bug: 30352311
Test: manual
Change-Id: If3f024a1611366c0677a996705724458094fcfad
(cherry picked from commit a629c772f4a7a5ddf7ff9f78fb19f7ab86c2a9c2)
ersistentdata/PersistentDataBlockManager.java
52e64d0162bd71164c6e23e3975e98091f70588a 09-Dec-2016 Julia Reynolds <juliacr@google.com> Give assistant ability to modify channels.

Test: cts on same topic
Change-Id: Ia0db73d4d81a89e0821ba6a06f12823605dbea73
otification/NotificationAssistantService.java
d4f08a007d7b640c0bd046c7a8168fb93491b7e3 13-Dec-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "AutoFill Framework refactoring."
1ca634a544a47193dd9e57f9b3eb3e42ab0dbbf1 29-Nov-2016 Felipe Leme <felipeal@google.com> AutoFill Framework refactoring.

The AutoFill Framework uses the same AssitStructure provided by the Assist API
and so far it was using the same methods as well, both internally and externally
(public API).

Sharing that internal code internally is fine, but the public APIs must distinguish between the 2 cases so they can fill the assist structures accordingly (although the initial implementation still shares the same logic).

This CL also splits the original 'auto-fill' request in 2 types of requests,
which are set by View flags:

- ASSIST_FLAG_SANITIZED_TEXT
- ASSIST_FLAG_NON_SANITIZED_TEXT

It also added new methods and callbacks to handle save requests.

Bug: 31001899
Test: manual verification

Change-Id: I4eb09099dc19a43cb7e053e64d939aed3704b410
utofill/AutoFillService.java
utofill/FillCallback.java
utofill/IAutoFillManagerService.aidl
utofill/SaveCallback.java
oice/VoiceInteractionSession.java
22f02b3e4acd7c6983f4d4d58b85069d5ec920ab 01-Dec-2016 Julia Reynolds <juliacr@google.com> Accept adjustments from notification assistant.

Test: runtest systemui-notification & cts in same topic.
Change-Id: Icff1f89eac32b82d583eca24b0a15f67795912a1
otification/Adjustment.java
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
otification/SnoozeCriterion.aidl
otification/SnoozeCriterion.java
ad7268724d55d8835ae55605578d1d1d14672f1d 02-Dec-2016 Charles He <qiurui@google.com> Merge "Remove IPersistentDataBlockService from system-api."
c86c88f76f733c03f681bd47b64c9e44c5a81f68 01-Dec-2016 Charles He <qiurui@google.com> Remove IPersistentDataBlockService from system-api.

Change-Id: I55e46c0815e4ef84b4d7a752cc72407f893ab569
Test: manual
Bug: 33238174
ersistentdata/PersistentDataBlockManager.java
f81df2d5e52e50fe7197135baf5cabcabdba4628 01-Dec-2016 Amith Yamasani <yamasani@google.com> Merge "Secure MATCH_UNINSTALLED_PACKAGES across users"
df09da04be98bd053ddcf7818c0893ca08fa041a 01-Dec-2016 Charles He <qiurui@google.com> Merge "Prevent writing to FRP partition during factory reset."
a629c772f4a7a5ddf7ff9f78fb19f7ab86c2a9c2 24-Nov-2016 Charles He <qiurui@google.com> Prevent writing to FRP partition during factory reset.

Avoid potential race condition between FRP wipe and write operations
during factory reset by making the FRP partition unwritable after
wipe.

Bug: 30352311
Test: manual
Change-Id: If3f024a1611366c0677a996705724458094fcfad
ersistentdata/PersistentDataBlockManager.java
0d1fd8d09163566d2c7eb72037f63b6404ada642 12-Oct-2016 Amith Yamasani <yamasani@google.com> Secure MATCH_UNINSTALLED_PACKAGES across users

Introduce a new internal flag MATCH_ANY_USER for genuine uses
of searching through all apps on the device.

Some temporary accommodations for Launchers that reach across
to the work profile until we have a new LauncherApps API to do
that officially.

Bug: 31000380
Test: CTS tests added
Change-Id: I2e43dc49d6c2e11814a8f8d1eb07ef557f31af34
otification/StatusBarNotification.java
7e1ffd737e84f0876efa07ba1cb7ea498f10f92f 28-Nov-2016 Julia Reynolds <juliacr@google.com> Shorten log tag.

Bug: 32437842
Test: manual
Change-Id: Id6f77a2dec30a4da695232d70e441398285f14d0
otification/NotificationListenerService.java
b6c1f99bd96d2f38980f4473baf3aa908d059db2 22-Nov-2016 Julia Reynolds <juliacr@google.com> Allow listeners more snoozing options.

(snooze indeterminately and unsnooze)

Test: runtest systemui-notification and cts tests in same topic.
Change-Id: I5ce74638f55ed796bc6b26af167b32b0040f4222
otification/NotificationListenerService.java
e83e197931f7af7a390e67272101d8f09471749e 22-Nov-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added 'oneway' flags on AIDL where appliable."
254c2c99dd5a475180070031dbb251f9c7388c10 21-Nov-2016 Felipe Leme <felipeal@google.com> Added 'oneway' flags on AIDL where appliable.

Not only if fixes warning about outgoing transactions from system_server
not having the FLAG, but it fixes system crashes when the service
doesn't behave well (for example, if it does not call super.onCreate()
on onCreate().

BUG: 31001899
Test: manually built and ran it

Change-Id: I829ee501edb84bd02a60e8df92f9a0e0d2157887
utofill/AutoFillService.java
utofill/IAutoFillCallback.aidl
utofill/IAutoFillManagerService.aidl
utofill/IAutoFillService.aidl
8e1a4931bd84f579e0f2444f54fafd79f974e037 18-Nov-2016 Jeff Davidson <jpd@google.com> Fix Javadoc errors in CarrierService.

Test: Verified in IntelliJ's Javadoc viewer.
Change-Id: I449a57648b0aa89ba2a9360bfc9b5bad2f9b0d51
arrier/CarrierService.java
dfa7fbc8702fae62e6b3f78c4d9245995baee04e 11-Nov-2016 Felipe Leme <felipeal@google.com> Bind AutoFillService on demand.

BUG: 31001899
Test: manually built and ran it

Change-Id: Ied7028e41c273f5e30f88fc92f919249046877eb
utofill/AutoFillService.java
utofill/FillCallback.java
utofill/IAutoFillManagerService.aidl
utofill/IAutoFillService.aidl
29a5b0d0f1cc7fd6cbfe97c816b8a687d9e438cc 25-Oct-2016 Felipe Leme <felipeal@google.com> Added a callback for AutoFillService.

So far AutoFillService only received the assist data from framework; in
this CL, it also offers a method where the auto-fill provider can send
the auto-fill data back to framework.

The workflow is:

- AFMSI calls a new AM method (requestAutoFillData(), instead
of requestAssistContextExtras()).
- The assist receiver is located in the app, not on system service.
- AM uses a new request type (ASSIST_CONTEXT_AUTOFILL) to request the
assist data to the activity.
- ViewStructure has a new setAutoFillId() method which is used to set an
unique id for the view.
- View uses the accessibility id to implement the auto-fill id.
- When the activity fullfills the request, it creates an IAutoFillCallback
remote object - that will be used to set the auto-fill fields - and
returns it in the assist bundle (using the
VoiceInteractionSession.KEY_AUTO_FILL_CALLBACK key).
- The app-visible AutoFillService class offers an onFillRequest() method,
which contains the assist data and a FillCallback used to handle it.

BUG: 31001899
Test: manually built and ran it

Change-Id: I3d208c14e81022dc96dd03f38bbe25a778b24a67
utofill/AutoFillService.java
utofill/FillCallback.java
utofill/FillableInputField.java
utofill/IAutoFillCallback.aidl
utofill/IAutoFillManagerService.aidl
utofill/IAutoFillService.aidl
oice/VoiceInteractionSession.java
05675c80c11b5414ecee20afce727fe25698452d 10-Nov-2016 Julia Reynolds <juliacr@google.com> Merge "Expose dismiss reasons to notification listeners."
3aa5f1eec08e6c3233f13935ea45c833433a2d27 09-Nov-2016 Julia Reynolds <juliacr@google.com> Expose dismiss reasons to notification listeners.

Test: see cts tests on same topic
Change-Id: Ibae45e125ebc2aa394fbdb41c00341bf0ac101e5
otification/INotificationListener.aidl
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
3775a39e39f696f0e11bd009c27a9a604e1717d0 09-Nov-2016 Julia Reynolds <juliacr@google.com> Merge "Move notification channel from record to sbn."
67c8e1e61f289ff51382c372452071eebca2104c 09-Nov-2016 Julia Reynolds <juliacr@google.com> Merge "Ranker --> Assistant."
423b9fc83d736326b8ddadbfcd6fd5f181bf9fec 09-Nov-2016 Julia Reynolds <juliacr@google.com> Move notification channel from record to sbn.

So notificationlisteners know about it.

Test: runtest systemui-notification
Change-Id: I28fc86730d3f7ad246a0164f44157594f57430c0
otification/StatusBarNotification.java
77b2cc920fb27adaa156b463dccb0bd1b5c87eb9 08-Nov-2016 Julia Reynolds <juliacr@google.com> Ranker --> Assistant.

Rename ranker to assistant and make some of the methods public.
Delete the ext services ranker and restore the listener-type
lifecycle to the assistant.

Test: manual. add a notification assistant and verify it gets
assistant and listener callbacks.

Change-Id: Ia3406c8c14d923426c1b8a6d8b5187efe64c31c3
otification/Adjustment.java
otification/NotificationAssistantService.java
otification/NotificationRankerService.java
5381aa4b585f3fa2a315d88e910111173e2ef77d 13-Oct-2016 Felipe Leme <felipeal@google.com> Initial implementation of the Auto-Fill Framework classes.

This CL provides the initial, skeleton implementation of the Auto-Fill
Framework classes:

- Defines the system service and app-based
AIDL (IAutoFillManagerService.aidl and IAutoFillService.aidl respectively).
- Defines the 'adb shell cmd' interface.
- Defines the permission required to access the service.
- Registers the service on SystemServer.
- Adds the code to bind the app-specified service to system_server.
- Defines the service class (AutoFillService) required by providers.
- Implements the initial startSession() method.

This is still a very early, "work-in-progress" change:
- It has many TODOs.
- It does not have unit or CTS tests yet.
- It does not provide a callback method to auto-fill the fields.
- In fact, it has a lot of TODOs.

Despite these adversities, it can be tested by following the steps
below:

1.Create an app with a service extending AutoFillService

2.Implement the onNewSession() method

3.In the manifest:
- Listen to android.service.autofill.AutoFillService intents.
- Require the android.permission.BIND_AUTO_FILL permission.

4.Explicitly set the app as an autofill-service by running:
adb shell settings put secure auto_fill_service MY_APP/.MY_SERVICE

5.Start a session against the top activity:
adb shell cmd autofill start session

BUG: 31001899
Test: manually built and ran it

Change-Id: I00f4822159b31ddddba8f513e57c4474bc74eb89
utofill/AutoFillService.java
utofill/AutoFillServiceInfo.java
utofill/IAutoFillManagerService.aidl
utofill/IAutoFillService.aidl
73481c88376ce5e861a50f8d11d313e5b7b1aae2 02-Nov-2016 Julia Reynolds <juliacr@google.com> Merge "Some channel model updates"
85769915e7ef10bef2b5338ed8f04d9b787924fb 25-Oct-2016 Julia Reynolds <juliacr@google.com> Some channel model updates

- Apps cannot update their channel settings after creation.
- Importance is required when creating a channel.
- Some method name changes.
- Ranker can't modify fields a user has changed.
- High and Max importance mean the same thing.
- The default channel adopts app wide settings on creation.
- The default channel is limited to importance low once target api is post n mr1
unless the user changed it.

Test: runtest --path frameworks/base/services/tests/servicestests/src/com/android/server/notification

Change-Id: I73c449a6abe6d709046de79c5c54339cb2edf0b8
otification/NotificationListenerService.java
6bc701421047bf881ee16c49b242ea19ae4cd9b9 27-Oct-2016 John Reck <jreck@google.com> Add SurfaceHolder#lockHardwareCanvas()

Bug: 26988043
Test: SurfaceViewTests#testSurfaceHolderHardwareCanvas CTS test
Change-Id: I3e5352d498dbe2fc56a18ca27360d129a14c7784
allpaper/WallpaperService.java
8f488d3f2f754bc6e8f4e87f40031a3f6a0b00db 14-Oct-2016 Julia Reynolds <juliacr@google.com> Move autogrouping into framework.

Test: runtest systemui, and post and dismiss notifications, checking that they
are grouped (or not) appropriately.

Change-Id: I8f3ec497cebcb14a7853fac98b844a3fd4503141
otification/Adjustment.java
72f1cbb3b988d6daa61c45a69aa9f8024c029b06 19-Sep-2016 Julia Reynolds <juliacr@google.com> Add support for snoozing notifications

To a notification listener, snoozing will appear as a cancel
(with reason snoozed) followed by a post (when the snooze period
ends).

Apps can repost a snoozed notification, but the updates will not be shown
to the user until the snooze period ends.

Snoozing is canceled if the posting app or a notification listener
cancels the notification.

Any notification listener can snooze a notification. Technically apps
can snooze their own notifications also, though that's not public.

In this iteration snoozed notifications will be lost on device reboot.

Test: included. Also, various post, snooze, update, cancel tests with
a listener.

Bug: 30997603
Change-Id: I568a6448196f0992a17d20a4dac296321ec5092b
otification/NotificationListenerService.java
otification/NotificationRankerService.java
35afe2d8de2baa5d372790ed06da23ea49bf5a49 26-Sep-2016 Adrian Roos <roosa@google.com> Fix wake lock logic during Dream startup am: 9ede1d2602 am: 042c2349c6
am: 4ffff73947

Change-Id: If3c1dd67f402bc549cad76e5072817a1d1104463
4ffff739478b1fb62711c91a81733e6d9db7d9cc 24-Sep-2016 Adrian Roos <roosa@google.com> Fix wake lock logic during Dream startup am: 9ede1d2602
am: 042c2349c6

Change-Id: I6c8a9119fd841b071dfb9f0e54680eb3dd7a1ef1
9ede1d260284bbf0b47ca6f0315e943058624520 23-Sep-2016 Adrian Roos <roosa@google.com> Fix wake lock logic during Dream startup

Fixes a crash that would happen in all dreams
that did not have permission to acquire wake locks.
Instead moves the wake lock logic into the system
process. Also fixes a bug in DozeService where the
wake lock was not held until dozing was actually
properly initialized.

Fixes: 31612287
Bug: 31044352
Related-CL: I85955a2b7d6bad5171accbc336117a9660b1b198
Test: adb shell settings put secure screensaver_components com.android.dreams.basic/.Colors; adb shell service call dreams 1

Change-Id: Idb3f921ee71b6da6c2ab0c44c332ef91f93ddbc0
reams/DreamService.java
reams/IDreamService.aidl
8cbd52be80d02a661896e886a0954be9db7b7693 21-Sep-2016 Adrian Roos <roosa@google.com> Hold WakeLock while DreamService starts am: 7445c0bb86 am: 5e18c826f3
am: f71c33a6ae

Change-Id: I4e404bbf3fd1995c0899883a6d9cf12210329a1c
f71c33a6ae6c436270e57a16b7bfb42f4f794cd1 20-Sep-2016 Adrian Roos <roosa@google.com> Hold WakeLock while DreamService starts am: 7445c0bb86
am: 5e18c826f3

Change-Id: I4c8d223c8968f554ceabd9dd80bb55e19a5b7e34
90eba6d81c22116f537816e37fb3090f9753e792 16-Sep-2016 Julia Reynolds <juliacr@google.com> Merge "Add Notification channels"
84024c1f09aef986893f847120525e23accfdbc2 15-Sep-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Allow Condition Providers to bind/unbind themselves"
38e6ca4e7481f3b1c8072705bfd38b8b454ccfe7 08-Aug-2016 Julia Reynolds <juliacr@google.com> Allow Condition Providers to bind/unbind themselves

So they only run when needed.

Change-Id: I5cf3a572837cb773dcb4f278a9f86a9d909147e4
Fixes: 30727598
otification/ConditionProviderService.java
206c7e9d83c4fbfba51ea5170cced315244f3c03 15-Sep-2016 Julia Reynolds <juliacr@google.com> Delete L->M upgrade code.

Bug: 25497753
Change-Id: I0ae55e0d49b0aa488b86e336a6246fe57cba8601
otification/ZenModeConfig.java
b5e44b796618c376cf535e43aaa86ea4522e7770 16-Aug-2016 Julia Reynolds <juliacr@google.com> Add Notification channels

In this iteration:
-Every app gets a default channel that notifications will be posted
to if they don't specify a channel themselves. The default channel
inherits app-wide settings on upgrade.
-Apps can create new channels without user approval, but apps
cannot change the name of a channel once created, nor can they ever
set the importance.
- When a notification is posted:
- If the channel is marked as 'vibrates', vibration will be
applied to notifications that lack a vibration. unlike the default
notification flag, notifications will retain their custom vibration
if given
- Same with sound and lights
- A notification's importance is the min of the app and channel
importance
- A notification can bypass dnd if: either the app or channel settings
say it can
- A notification's show on lockscreen setting comes from the app first,
and the channel second if the app has no preference

Tests: in cl. also there's a cl for cts and a test app.

Change-Id: I630f99df655800b00586dcfab538d320d04fe0f0
otification/NotificationRankerService.java
7445c0bb86c57172eb88a4e37183634abce2e37b 07-Sep-2016 Adrian Roos <roosa@google.com> Hold WakeLock while DreamService starts

Fixes a bug where DozeService would not properly initialize
because the CPU went to sleep before onDreamingStarted completed,
causing the pickup gesture to not work.

Change-Id: I85955a2b7d6bad5171accbc336117a9660b1b198
Fixes: 31044352
reams/DreamService.java
50421f1a381a5f4ce06e3a3ea5d30c5606a1dedf 11-Aug-2016 Esteban Talavera <etalavera@google.com> Do not toggle OEM unlock if bootloader unlocked am: c48b20f8f1 am: 83583bd596
am: b9bef2fb7d

Change-Id: I87ffae46a63f1543b55e075cecffb1d2c2e1c160
b9bef2fb7d5f216caa5bd64d8e26041051327199 11-Aug-2016 Esteban Talavera <etalavera@google.com> Do not toggle OEM unlock if bootloader unlocked am: c48b20f8f1
am: 83583bd596

Change-Id: Ib8293a02ca13587154133a939c4515de1a114bd9
c48b20f8f1d3e07e8a931b195669b0ab8895006c 11-Aug-2016 Esteban Talavera <etalavera@google.com> Do not toggle OEM unlock if bootloader unlocked

Bug: 30681215
Change-Id: Ia0fd55dd7b6b731d6f5733fc733621e99bd7b153
ersistentdata/PersistentDataBlockManager.java
98aa59e40703682acaad5999da9a79e58acec821 20-Jul-2016 Julia Reynolds <juliacr@google.com> Merge \\"Snooze schedule rules that were canceled by alarms.\\" into nyc-mr1-dev am: ae0aed951b
am: 261b655396

Change-Id: Icd0ff5a828d0f2a39bb0e39085cd9fd7788f354f
261b655396a08ecbf71e8ab4f0648bab027e01de 20-Jul-2016 Julia Reynolds <juliacr@google.com> Merge \"Snooze schedule rules that were canceled by alarms.\" into nyc-mr1-dev
am: ae0aed951b

Change-Id: I18bd8e7528a6c24f350c97268b26fe91ef198290
fe58f1f3862eb98837d2da6826dc17b67bf029cf 19-Jul-2016 Julia Reynolds <juliacr@google.com> Snooze schedule rules that were canceled by alarms.

So a reboot or snoozed alarm doesn't cause them to
reactivate.

Bug: 30087850
Change-Id: I83fdb88009b515d442993944aec40df7365e830f
otification/ZenModeConfig.java
b55c3c60a8b07d9d5454363c98590ab727b06028 15-Jul-2016 Jason Monk <jmonk@google.com> Merge \\"QS: Don\\'t use ComponentName to identify tiles\\" into nyc-mr1-dev am: a0967ebbdf
am: 356d4914b2

Change-Id: I83fad6237edfb9516e1fe40612b820c319f26cc5
356d4914b2cf5b418fb8152c77214c3d4756ad72 15-Jul-2016 Jason Monk <jmonk@google.com> Merge \"QS: Don\'t use ComponentName to identify tiles\" into nyc-mr1-dev
am: a0967ebbdf

Change-Id: Ib98a48e46f711b927a1b9e8d2b8162a59bfa3240
a0967ebbdf8a846c85381f0849c3475eebba6701 15-Jul-2016 Jason Monk <jmonk@google.com> Merge "QS: Don't use ComponentName to identify tiles" into nyc-mr1-dev
62d1abf0bd5567bc10f44e4ded7f195820fec693 13-Jul-2016 Julia Reynolds <juliacr@google.com> Merge \\"Attribute manual zen mode in volume panel footer.\\" into nyc-mr1-dev am: f6d766020f
am: c2381727a7

Change-Id: Ibb38d3a68dd642b5d6507341b7e189b77bba9502
c2381727a7ca868842bec5e91b41bb7a83d369f3 13-Jul-2016 Julia Reynolds <juliacr@google.com> Merge \"Attribute manual zen mode in volume panel footer.\" into nyc-mr1-dev
am: f6d766020f

Change-Id: I89ee22c5304e7de651aa34bddf5635f2e87e6b01
44ad6ff4c2162842335372060ad6a34fabc8b29d 06-Jul-2016 Julia Reynolds <juliacr@google.com> Attribute manual zen mode in volume panel footer.

So users know what app enabled DND.

Change-Id: I0aad862539b28302bf618641ad29cdfa956c8f33
Fixes: 29892371
otification/ZenModeConfig.java
ee68fd889c2dfcd895b8e73fc39d7b97826dc3d8 23-Jun-2016 Jason Monk <jmonk@google.com> QS: Don't use ComponentName to identify tiles

Evidently some apps redirect/obscure tiles in a way that makes
creating a ComponentName from the TileService useless. Instead
generate a token which will be a much more stable way of identifying
tiles henceforth.

Change-Id: Id68550bcdcdc3e3987f09380f258610e7a5aca85
Fixes: 29121793
uicksettings/IQSService.aidl
uicksettings/Tile.java
uicksettings/TileService.java
099b337db990274b6f69149f6e237d7cf5d8b63a 23-Jun-2016 Jason Monk <jmonk@google.com> Merge \\\"QS: Hacks to fix bigger problems in TileService binding\\\" into nyc-dev am: 1427bb3dc0 am: 955de27827
am: 1ae5fbb187

Change-Id: I07ea15c56048becb7cba5f27bb7037ae8e10aea2
1ae5fbb18713d26c9e51f7f16d9af5d7f1def576 23-Jun-2016 Jason Monk <jmonk@google.com> Merge \\"QS: Hacks to fix bigger problems in TileService binding\\" into nyc-dev am: 1427bb3dc0
am: 955de27827

Change-Id: I54da9edd0593160ee38002cb2d97c64248a9ed96
9981d94d54cc0242e0f7f211ce07ca1320ab09d0 23-Jun-2016 Jason Monk <jmonk@google.com> Merge \"QS: Hacks to fix bigger problems in TileService binding\" into nyc-dev
am: 1427bb3dc0

Change-Id: I471055cbac21c09d23b60e6dab15bcc1cd1d6208
955de2782779384e6a6eaf27496e4d4e48d50ca0 23-Jun-2016 Jason Monk <jmonk@google.com> Merge \"QS: Hacks to fix bigger problems in TileService binding\" into nyc-dev
am: 1427bb3dc0

Change-Id: I9b5e57c302b6ae0f6accccf65b5e404a1ad780c0
6edbefdd54ead90fd30fc36159ef8dd779b6b274 23-Jun-2016 Jason Monk <jmonk@google.com> QS: Hacks to fix bigger problems in TileService binding

Bug: 29121793
Change-Id: I9cb8d8ee36ce5cc77ba3c11decb1b3a797fd7999
uicksettings/TileService.java
4519b87423a60576040812da608ef603a924d4a8 22-Jun-2016 Jason Monk <jmonk@google.com> Merge \\\"QS Tiles: Fix some problems with connecting through intent\\\" into nyc-dev am: 126088536d am: a5076ef7fa
am: 8f21a99bfa

Change-Id: Idd0944573e8db2b282795952ceb35d2fe9961419
8f21a99bfa64cfda3b11002190514ff6446814a7 22-Jun-2016 Jason Monk <jmonk@google.com> Merge \\"QS Tiles: Fix some problems with connecting through intent\\" into nyc-dev am: 126088536d
am: a5076ef7fa

Change-Id: I9bb70bc724c36906e014d6f86e48efe37bb42001
a5076ef7fa58c504eeb55020d47e67bace0a4872 22-Jun-2016 Jason Monk <jmonk@google.com> Merge \"QS Tiles: Fix some problems with connecting through intent\" into nyc-dev
am: 126088536d

Change-Id: I7e8ee5c59d7f26dcbc2406a53c0c6c39a9d8f55e
d8aa42f3e29732eb383cb321f10b930daebd5bc9 22-Jun-2016 Jason Monk <jmonk@google.com> Merge \"QS Tiles: Fix some problems with connecting through intent\" into nyc-dev
am: 126088536d

Change-Id: Ie187a5c2e062f9b51fd21e80e81cac15f02ccbe6
8753e184f967d1db91de34cb66aae0a977259a60 22-Jun-2016 Jason Monk <jmonk@google.com> QS Tiles: Fix some problems with connecting through intent

- Don't send Tile through intent, it can cause crashes
- Clean up other issues surrounding this

Change-Id: I08c626cf39b36d349592c1e0b81627b9bc7eeeb3
Fixes: 29519485
uicksettings/IQSService.aidl
uicksettings/TileService.java
fe5ff2279f1724092c35ac803ed23083bb8d32da 18-Jun-2016 Jason Monk <jmonk@google.com> Merge \"QS API: Fix mService and mTile being null once and for all\" into nyc-dev
am: fc70b07385

Change-Id: I7327f5e4f7ac2180e0c584dc761b861c14dd475f
6831aee5fab185768f76e0600127884163998d02 17-Jun-2016 Jason Monk <jmonk@google.com> Merge \\\"QS API: Fix mService and mTile being null once and for all\\\" into nyc-dev am: fc70b07385 am: c552a36992
am: 6a06372bb9

Change-Id: I8164179f96be4195bcafb3528e8dcbc45946bee2
6a06372bb97b6c3882f6146254b27c9f972f831b 17-Jun-2016 Jason Monk <jmonk@google.com> Merge \\"QS API: Fix mService and mTile being null once and for all\\" into nyc-dev am: fc70b07385
am: c552a36992

Change-Id: I7a0cc08bbad4ae7ccfd3344f3235ab88eddefab4
c552a369926fdddff3036fa215f8b5b62aee9dc8 17-Jun-2016 Jason Monk <jmonk@google.com> Merge \"QS API: Fix mService and mTile being null once and for all\" into nyc-dev
am: fc70b07385

Change-Id: I2aed24cf36354fbe332787082bcf628357bab3b1
a3453b8bd9af44566c6a31fd0156cc76e6028f6d 17-Jun-2016 Jason Monk <jmonk@google.com> QS API: Fix mService and mTile being null once and for all

Change-Id: Idd82e4c2f6cfc2b30432e15e23963c1d7a959e43
Fixes: 29121793
uicksettings/IQSTileService.aidl
uicksettings/TileService.java
f5e5c3a72ac8d8ebd5cfbbdceb533a125190b610 04-Jun-2016 Jorim Jaggi <jjaggi@google.com> Merge "Add new attributes for wallpaper info" into nyc-mr1-dev am: c27660d45a
am: acfed07f72

* commit 'acfed07f725466e866445cfdf4fda94fa0e8f0a0':
Add new attributes for wallpaper info

Change-Id: Ie439547cb6964c1f90b2ac313408a502027ccd25
acfed07f725466e866445cfdf4fda94fa0e8f0a0 04-Jun-2016 Jorim Jaggi <jjaggi@google.com> Merge "Add new attributes for wallpaper info" into nyc-mr1-dev
am: c27660d45a

* commit 'c27660d45a920af49c9e53b1cabaa32fd4b3046c':
Add new attributes for wallpaper info

Change-Id: I3dc04d70f50809ff20ec0fb23e0c3265450ff621
526505da256a9af8542e592c566bd87334d075e6 24-May-2016 Jorim Jaggi <jjaggi@google.com> Add new attributes for wallpaper info

Adjust test wallpaper to use these attributes.

Also fix some issues where wallpaper got laid out differently in the preview
mode.

Bug: 28770685
Change-Id: I259f3884f5f2c0b723a6a5ce012d45170f64c4c7
allpaper/WallpaperService.java
0649158cad22a89a81040d26c43446eaae048d7d 03-Jun-2016 Svetoslav Ganov <svetoslavganov@google.com> Merge "Properly set default voice interactor" into nyc-dev am: e34bb5a1ff am: 13f802dc01
am: a8cdb6f645

* commit 'a8cdb6f6453d23f915d5c470bbdf1000153df383':
Properly set default voice interactor

Change-Id: I6310a3da7aeb0b8b78918399ef79a0fcc91d4792
a8cdb6f6453d23f915d5c470bbdf1000153df383 03-Jun-2016 Svetoslav Ganov <svetoslavganov@google.com> Merge "Properly set default voice interactor" into nyc-dev am: e34bb5a1ff
am: 13f802dc01

* commit '13f802dc013866986be51328af21378783d19e61':
Properly set default voice interactor

Change-Id: I29c2a1490877d4b25ca64fee8a53c6970d07a1f2
bd28e027ed87da6cdc2313481439aeab021b2820 03-Jun-2016 Svetoslav Ganov <svetoslavganov@google.com> Merge "Properly set default voice interactor" into nyc-dev
am: e34bb5a1ff

* commit 'e34bb5a1ffc5fe35b2fbc58824ad5bfbc7ecad3d':
Properly set default voice interactor

Change-Id: Ifcad5647ee8ab09765fe89f40693eb335996982a
13f802dc013866986be51328af21378783d19e61 03-Jun-2016 Svetoslav Ganov <svetoslavganov@google.com> Merge "Properly set default voice interactor" into nyc-dev
am: e34bb5a1ff

* commit 'e34bb5a1ffc5fe35b2fbc58824ad5bfbc7ecad3d':
Properly set default voice interactor

Change-Id: I1e9d7488ecac8569a585e00ebc7c45df1b1833c3
b625e19a877dc8e128329d730bc5e9b8e8a2fce9 03-Jun-2016 Svetoslav Ganov <svetoslavganov@google.com> Properly set default voice interactor

We need to figure out the default voice interactor to give
it default permissions. This happens before the user has
been unlocked and if the voice interactor is not direct
boot aware we fail to find it, hence no permissions are
granted. Now we query the package manager for both direct
boot aware and unaware components. This is fine as we
don't interact with the assistant until the user is
unlocked.

bug:28963642

Change-Id: Ide5471fa1798e868c6e3a4b5e87570a5556e2d3f
oice/VoiceInteractionServiceInfo.java
811d0411f34af4985556e58747247c46f5ed4a8e 26-May-2016 Ji Yang <yangji@google.com> Merge "Rename carrier messaging API constant." into nyc-dev am: f7375b46ff am: e6c6ca417d
am: 54b280ba66

* commit '54b280ba66d8f92d73711df4d02add1140eb416f':
Rename carrier messaging API constant.

Change-Id: Ib94ec913651d3b0c92e43927cb8a091732319777
54b280ba66d8f92d73711df4d02add1140eb416f 26-May-2016 Ji Yang <yangji@google.com> Merge "Rename carrier messaging API constant." into nyc-dev am: f7375b46ff
am: e6c6ca417d

* commit 'e6c6ca417da6f62de4bdebd7b380f12b751a08b7':
Rename carrier messaging API constant.

Change-Id: I9e2d1c3572a6e7658e6ba66a7d4c01fd4a4c805a
e6c6ca417da6f62de4bdebd7b380f12b751a08b7 26-May-2016 Ji Yang <yangji@google.com> Merge "Rename carrier messaging API constant." into nyc-dev
am: f7375b46ff

* commit 'f7375b46ff9848feba0a9632669d07384954d69e':
Rename carrier messaging API constant.

Change-Id: I476b10118136b13a49b1d55864bbef8e568d6c7e
f8969b233c1637d4945e4fe2c3c9a35fef5019ed 26-May-2016 Ji Yang <yangji@google.com> Merge "Rename carrier messaging API constant." into nyc-dev
am: f7375b46ff

* commit 'f7375b46ff9848feba0a9632669d07384954d69e':
Rename carrier messaging API constant.

Change-Id: I0e6713e07899cde7780b433c0f3053e344e6d327
f7375b46ff9848feba0a9632669d07384954d69e 26-May-2016 Ji Yang <yangji@google.com> Merge "Rename carrier messaging API constant." into nyc-dev
e1b53d7caba4e6c8e0367e4d33f5dd3b816a6606 25-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Add missing @Deprecated annotations."
88be37e50a9a1fce703a95d9fb90b975de06a286 25-May-2016 Julia Reynolds <juliacr@google.com> Merge changes from topic \'cps\' into nyc-dev am: d3827be162
am: 5bf51f026c

* commit '5bf51f026cddca00b156f93089cb803e4c612d96':
Api updates.
Note timezone changes.

Change-Id: Ic175b68e0c8000c1fe613f0e213631d7e1275f2d
39c013811e994b8b7e037e2f2c1cfbafd8728aee 25-May-2016 Julia Reynolds <juliacr@google.com> Merge changes from topic \'cps\' into nyc-dev
am: d3827be162

* commit 'd3827be1620a8cb3bb1dfa42d07334f3be4382ef':
Api updates.
Note timezone changes.

Change-Id: I52055d3a5193bed6392327bd5df82dc7880c5ce7
5bf51f026cddca00b156f93089cb803e4c612d96 25-May-2016 Julia Reynolds <juliacr@google.com> Merge changes from topic \'cps\' into nyc-dev
am: d3827be162

* commit 'd3827be1620a8cb3bb1dfa42d07334f3be4382ef':
Api updates.
Note timezone changes.

Change-Id: Iac6f6a3c65f2a22792bef8ee3d905f8324eb084e
ad41a6f0def1dfef9fb5ad1a7bed355760eed6be 17-May-2016 Julia Reynolds <juliacr@google.com> Api updates.

Change-Id: Ibafef673c54e4ff07bca2bbe70db6cad799b8033
Fixes: 28818092
otification/Condition.java
otification/ConditionProviderService.java
514c5ef8d5774d8820ed1bf90fe53af1606cf106 25-May-2016 Aurimas Liutikas <aurimas@google.com> Add missing @Deprecated annotations.

Add missing @Deprecated annotations for methods with @deprecated tag
in javadoc.

Change-Id: I35b78ccb97832d86b914c21a300444ba29e33844
otification/NotificationListenerService.java
otification/StatusBarNotification.java
oice/VoiceInteractionSession.java
99eed4b5d6291fe8714ed55dbf4598db6fe29711 23-May-2016 Chris Wren <cwren@android.com> Merge "Don\'t throw RemoteException from new NLS APIs" into nyc-dev am: 28d9ef8112
am: ec2e36a485

* commit 'ec2e36a4851780219e342c545467fb433ef16fd6':
Don't throw RemoteException from new NLS APIs

Change-Id: If4175e64a71b2b02306f9eb579f9755492ea6dfd
ec2e36a4851780219e342c545467fb433ef16fd6 23-May-2016 Chris Wren <cwren@android.com> Merge "Don\'t throw RemoteException from new NLS APIs" into nyc-dev
am: 28d9ef8112

* commit '28d9ef811291921ddb22e7b4b92e1222e673154e':
Don't throw RemoteException from new NLS APIs

Change-Id: I8a89c5e4b800baf8c810eb24b0b5435fa63b1378
4da0296e236047aef095473ffe4105b41df0c6c0 23-May-2016 Chris Wren <cwren@android.com> Merge "Don\'t throw RemoteException from new NLS APIs" into nyc-dev
am: 28d9ef8112

* commit '28d9ef811291921ddb22e7b4b92e1222e673154e':
Don't throw RemoteException from new NLS APIs

Change-Id: Ibafc3d9adeb046b2b43593285b6f605693b8682e
fe9ed66227cf989b566c444ba925d4c71def5875 21-May-2016 Meng Wang <mewan@google.com> Merge "Add API setAllowedCarriers, getAllowedCarriers to TelephonyManager" into nyc-mr1-dev
am: ac517216c5

* commit 'ac517216c50075baf3f93ae06ebec3dcb68ad9a9':
Add API setAllowedCarriers, getAllowedCarriers to TelephonyManager

Change-Id: Ice91655cf111964ec20f961b2555da3cc4b9325c
64997623bfa04e80064b6056fab0fb23144acb44 05-May-2016 Meng Wang <mewan@google.com> Add API setAllowedCarriers, getAllowedCarriers to TelephonyManager

Also:
Add RIL constants RIL_REQUEST_SET_ALLOWED_CARRIERS, RIL_REQUEST_GET_ALLOWED_CARRIERS

Bug: 28564314
Change-Id: Iaf6c40de633e767309c4088249a5c13cb0988c5c
arrier/CarrierIdentifier.java
cf548bfad62b06fd9ad1cf2f1a67bd57a8471c28 20-May-2016 Chris Wren <cwren@android.com> Don't throw RemoteException from new NLS APIs

Bug: 28820058
Change-Id: If4a290ab7549aa999cee348bf0db85b70cb57553
otification/NotificationListenerService.java
a8bb6dbd2c0aa2fef622e678e79d922da10cf807 20-May-2016 Ji Yang <yangji@google.com> Rename carrier messaging API constant.

BUG: 28842531
Change-Id: Ia0b249540cfb59f952e9c578370c54f2f98d2bc0
arrier/CarrierMessagingService.java
08eb83f8b0498be7f6361113f672eabefbca689b 12-May-2016 Chris Wren <cwren@android.com> Merge "document the return type of getImportance" into nyc-dev
am: 3041d49d88

* commit '3041d49d888cf0732c8aafb88d1d931b696b1d41':
document the return type of getImportance

Change-Id: I03bb7490b62e749e16a417297a672769283aebdd
3041d49d888cf0732c8aafb88d1d931b696b1d41 12-May-2016 Chris Wren <cwren@android.com> Merge "document the return type of getImportance" into nyc-dev
b15ecad14c8eb9fbf00ffb82c6d5dea37dabcc80 11-May-2016 Julia Reynolds <juliacr@google.com> Merge "Do not bundle cross user." into nyc-dev
am: 68a32b5aad

* commit '68a32b5aad77d0e85a877bf0b10caaf3e419d5b2':
Do not bundle cross user.

Change-Id: Ifa9198643939c69493a0ae406f48437d3bf94bd7
5ab5c748a850da558a0bcdf9e680228aae4a7646 10-May-2016 Chris Wren <cwren@android.com> document the return type of getImportance

Bug: 28690726
Change-Id: I06508e9e7c38e26e84801b86d6974f01abf5dfc1
otification/NotificationListenerService.java
eae43fbd1712a009c4a59760bf9588b3092e1e37 09-May-2016 Julia Reynolds <juliacr@google.com> Do not bundle cross user.

Bug: 28665081
Change-Id: I026b8a3a731183f96b45c19b95b4a0d109677a4c
otification/Adjustment.java
2d1a1a45219d4946527c284eb801a1c9e966966c 05-May-2016 Ruben Brunk <rubenbrunk@google.com> Merge "Update VR API docs." into nyc-dev
am: 01d232988a

* commit '01d232988a69dfdee7f90cebf560686e458849e4':
Update VR API docs.

Change-Id: I8e9d63e8ff6cab67b6c0def4f09a05fb03a23ecd
01d232988a69dfdee7f90cebf560686e458849e4 05-May-2016 Ruben Brunk <rubenbrunk@google.com> Merge "Update VR API docs." into nyc-dev
963b1da0184fc4ce16e2a18d8c599be8afbe1522 03-May-2016 Chris Wren <cwren@android.com> Merge "copy auto-group decisions to updates" into nyc-dev
am: facdf19313

* commit 'facdf193139ab32582cf642a6648261bd873268a':
copy auto-group decisions to updates

Change-Id: Iaeb0f80afda4b51633785fe2cad6f870587b4561
927d3453d39a9048c41eddf2418a97562757e930 03-May-2016 Ruben Brunk <rubenbrunk@google.com> Update VR API docs.

Bug: 28526281
Change-Id: Iff48d02a2fee542c5ded7fc8cd6cf74957eb738c
r/VrListenerService.java
8a1638f66a79dbf471e7e53294ba853b862434e6 02-May-2016 Chris Wren <cwren@android.com> copy auto-group decisions to updates

The rocket runs too late to affect auto-grouping for updates before
the UI reacts to the group change, so make sure it stays the same
until the rocket has an opportunity to reconsider.

Bug: 28517296
Change-Id: I16a0509cac06912c8b3139f06474f312207f9f8c
otification/StatusBarNotification.java
ca925148e2086e5f06458091459bdc667268c0f1 29-Apr-2016 Chris Wren <cwren@android.com> Merge "close a potential race condition in registerAsSystemService" into nyc-dev
am: 3b016f5445

* commit '3b016f544502dca8c162554c6ea42bd6727f4cde':
close a potential race condition in registerAsSystemService

Change-Id: I925edd07ead39be9ec34c013ad00d34f0d600c06
b66a16d9751d5e0f2b6816367e7d8919d707c692 29-Apr-2016 Chris Wren <cwren@android.com> close a potential race condition in registerAsSystemService

Bug: 27555424
Change-Id: I1537fd1aae3dba83de22d1b245bddd0a3922d289
otification/NotificationListenerService.java
bf5fff9059bb9139d5ed983bcf3261d2921fa90f 27-Apr-2016 Julia Reynolds <juliacr@google.com> Merge "More bugreport logging for scheduleconditionprovider." into nyc-dev
am: 9fa8b54

* commit '9fa8b54589b68dc6da3a7201cad1fc43e01e59e3':
More bugreport logging for scheduleconditionprovider.

Change-Id: I9598a449a0c63360993d06e0679ef4b166dae354
7f73308f50791740beb380fecc17903301054ad3 26-Apr-2016 Julia Reynolds <juliacr@google.com> More bugreport logging for scheduleconditionprovider.

Bug: 28261291
Change-Id: I70d1b466a9d4e18e5f4d9b1209711c442434ecab
otification/ZenModeConfig.java
b0800dce4abdca9aeef1cf72018906c2476c4c6b 21-Apr-2016 Tobias Thierer <tobiast@google.com> Avoid instantiations of Boolean that are immediately unboxed.

Replaced Boolean.valueOf() -> parseBoolean() across frameworks/base
(not including Am.java, which I'm leaving for a separate change).

Also fixed a couple of other valueOf()s in SyncStorageEngine.

Bug: 28289401
(cherry-picked from commit ca0182073530a237babe65b9ec7a9b41e667f8d1)
Change-Id: I2c6fb39a465885e7e625ed8894b1b9f8a30da5bc
otification/ZenModeConfig.java
28532d00267c73b8e0fa5235169fa72c414e1cd0 21-Apr-2016 Tobias Thierer <tobiast@google.com> frameworks/base: Avoid Long object allocations in Long.valueOf()

Replace usages where the Long is immediately unboxed or thrown
away with Long.parseLong().
In TaskRecord.java, I also fixed up similar uses of
{Boolean,Integer}.valueOf()

Tested: built frameworks/base successfully.

Bug: 28289401
(cherry picked from commit 4bd017d6a5437f153b2b0a149a5dde0b85bf6907)

Change-Id: Icfa4708946e774f4a1bacf185c3fd11a7087017e
otification/ZenModeConfig.java
a09b4d2a611a7606e8fc8c73a24bd941b6fc173f 15-Apr-2016 Narayan Kamath <narayan@google.com> Remove unnecessary allocation+unboxing of objects.

Transforming String->int can be done with 0 allocations
using Integer.parseInt.

bug: 28078871
Change-Id: I8d9f322d7154728849dde61ef282046032858d60
otification/ZenModeConfig.java
0d723a2a4d83db5f01aa5a21f3cbd9d2b608bced 14-Apr-2016 Amith Yamasani <yamasani@google.com> Merge "Multi-window assist callback" into nyc-dev
e8222e551f8abd2d82ca4f77ddb275e2e509751e 09-Apr-2016 Amith Yamasani <yamasani@google.com> Multi-window assist callback

Introducing a new callback in VoiceInteractionSession to
provide assist data for additional activities in the
foreground in a multiwindow setup.

PIP, docked windows and free-form windows (top-most)
will be queried for assist data and passed through the
new API to the Voice Interaction service.

Bug: 27718385

Change-Id: Ib4427c304611b75c2078dcb54f1f7e47ae7d9cfa
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionSession.java
b1a43484d5df60756332df705abe4724a56000e4 23-Jan-2016 Jonathan Basseri <misterikkit@google.com> Add toString to CarrierIdentifier.

This is so that objects can be logged and included in dumpsys.

Bug: 26778049
Change-Id: Iace574e40e7a7a7a06289592de9a51455b6acb18
arrier/CarrierIdentifier.java
196a05724d73832571c6e4ad5372b05840ec041f 08-Apr-2016 Bryce Lee <brycelee@google.com> Merge "Add granular control over disabled effects." into nyc-dev
3898db9e152ff8e2b34ae97f4a2ed37b9cb667db 08-Apr-2016 Julia Reynolds <juliacr@google.com> Merge "Allow the ranker to autobundle notifications." into nyc-dev
aa336f89265b8936d23e43189904de6ea9575538 08-Apr-2016 Jason Monk <jmonk@google.com> Merge "Allow mode of TileService to be changed" into nyc-dev
e46bb37acf6d3cfb9974672ace93f5381f70ad99 17-Mar-2016 Julia Reynolds <juliacr@google.com> Allow the ranker to autobundle notifications.

Bug: 26709317
Change-Id: I5017a471604e513a7b582cdc2f3472441e108fae
otification/Adjustment.aidl
otification/Adjustment.java
otification/NotificationListenerService.java
otification/NotificationRankerService.java
otification/NotificationRankingUpdate.java
otification/StatusBarNotification.java
7219adadb05d916874e7edff553dfc34bccf94ef 08-Apr-2016 Bryce Lee <brycelee@google.com> Add granular control over disabled effects.

Currently, we can only wholesale disable effects outside of zen mode.
There are some devices that require long running suppression of features.
Effects disabling was added previously to support this. However, calling
suppression was broken recently on a device where we needed notification
suppression, but not calling suppression.

This CL remedies this problem by adding more granular disabled effects
hints. The NotificationManagerService has been updated to handle these
request types and present ZenModeHelper with a unified map of what should
be suppressed.

Bug: 27992763
Change-Id: I38b4706446dfd6e1c3eb97266dbc3332b250adda
otification/NotificationListenerService.java
97d2272be0bf3e77474e7ff9984217dfe247f4d0 07-Apr-2016 Jason Monk <jmonk@google.com> Allow mode of TileService to be changed

Since the mode of a tile service was set in onTileAdded, it couldn't
be controlled by developers if they updated their tile. To handle
the mode has been moved to a boolean meta-data flag to indicate
a tile should be an active tile.

Bug: 28043969
Change-Id: I6403d34f8cb70809edc07769389d5a1f835c1ab3
uicksettings/IQSService.aidl
uicksettings/TileService.java
5717bd6ddb9f6c2fca6626ebb34f78feb1ae684a 07-Apr-2016 Chris Wren <cwren@android.com> add an onListenerDisconnected() callback to NLS

Also block all callbacks if the listener is not connected.

Also update the documentation to make lifecycle restictions
more clear.

Bug: 27582839
Change-Id: I029304e1fb87bd8d754cfb4641ba8cc095fc2b2e
otification/NotificationListenerService.java
c7be3beced4ade05466a4a77c003ea81c2429f74 02-Apr-2016 Ruben Brunk <rubenbrunk@google.com> Add VrManager AIDL interface for use by system apps.

Bug: 27884853
Change-Id: I6de0d291deafe5003070d60866c60d6599312e79
r/IVrManager.aidl
r/IVrStateCallbacks.aidl
89203de8782645a64529d9b11a9be138fc4771f6 24-Mar-2016 Clara Bayarri <clarabayarri@google.com> Remove unused import for KeyboardShortcutGroup

Left it in accidentally when removing default method.

Change-Id: I6af0712624ffaefff4cb4ad2a9e5a86d7104d2e7
reams/DreamService.java
fcd7e80b21cc9db6be00e37371401ea1d0938796 10-Mar-2016 Clara Bayarri <clarabayarri@google.com> Keyboard Shortcuts: plumb deviceId through

Bug: 27673736
Change-Id: Ie72807aa8c2bfd142b081a6a915e101c16d31473
reams/DreamService.java
c7354fe2d4d73808929d2087f2d18ee3d8fa47fc 08-Mar-2016 Ruben Brunk <rubenbrunk@google.com> Notify VrListenerService when VR activity changes.

Bug: 27536964
Bug: 22855417

Change-Id: I67e1f8e6595332b3d768a99735bbd5fd38dffdc9
r/IVrListener.aidl
r/VrListenerService.java
1c2fea8df7054d1bc23945c38460a123ce453c4a 11-Mar-2016 Jason Monk <jmonk@google.com> Fix QS FBE-ness

- Get service info for encryption-unaware apps
- SysUI assumes tiles in unavailable state when waiting for
binding
- Attempt rebind after unlock is complete
- Fix random crash that was making testing hard

Bug: 26940789
Bug: 27556723
Change-Id: I0b3600d35d4c74bb0d6c47a34a7d267bb9731bc4
uicksettings/IQSService.aidl
uicksettings/Tile.java
b7c810957f1d8f73100aff645188eca13eb30171 10-Mar-2016 Chris Wren <cwren@android.com> revert recent changes around system listener registrations

also guard against the ranker calling the self-service registration functions.
"why do we even have that lever?"

Bug: 27577115
Change-Id: I8a01cfdd801320e53d56bcbf515b9ba17e677166
otification/NotificationRankerService.java
a82662e3f5d6a36df9d5c0d33d5847d08273bd93 09-Mar-2016 Chris Wren <cwren@android.com> Merge "add a ranking service to the rocket" into nyc-dev
0efdb88ccc9d650e7a644b9be8f63792f2c66841 01-Mar-2016 Chris Wren <cwren@android.com> add a ranking service to the rocket

Bug: 22960980
Change-Id: Ic0e911a2f048a4b47171b338c3de13125852be43
otification/NotificationListenerService.java
otification/NotificationRankerService.java
1d6d16d6995099afa506ecac38019a5bb8eacd86 07-Mar-2016 Julia Reynolds <juliacr@google.com> Condition cleanup.

Change-Id: If978bebac52c0b1438e86339669f409b4b17c6fc
otification/Condition.java
otification/ConditionProviderService.java
be3696d42552ad55ae0a41e9dd9fe81f5b17d3e7 08-Mar-2016 Chris Wren <cwren@android.com> Merge "rename the asisstant service for the ranker" into nyc-dev
e24b9a6cfa4d565d7f49c9ae8f3aeca737d93312 17-Feb-2016 Ruben Brunk <rubenbrunk@google.com> Add a VR listener service.

Bug: 22855417
Bug: 26724891
Bug: 27364145

- Add an API for VrListenerService, which is bound/unbound
from the framework when the system VR mode changes.
- Allow only a single bound VrListenerService at a time.
- Monitor allowed VrListenerService implementations from
VrManagerService and evict services as needed when packages,
users, or settings change.
- Remove previous VR functionality in NotificationListenerService.
- Add component target to Activity#setVrMode to allow
explicit selection of the running VrListenerService from
the current VR activity.

Change-Id: I776335f4441be0e793d3126f2d16faf86a8c621a
otification/NotificationListenerService.java
r/IVrListener.aidl
r/VrListenerService.java
e0ba7eb365ac19fdc11c3f820349f0352761b9f4 04-Mar-2016 Chris Wren <cwren@android.com> rename the asisstant service for the ranker

Bug: 22960980
Change-Id: Ibe57933303a488b01c43a7621a488d425d6f707d
otification/INotificationListener.aidl
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
otification/NotificationRankerService.java
456b9620f0bbd91adf18a4f3e1cf8b1ee21faa5c 03-Mar-2016 Ji Yang <yangji@google.com> Merge "New CarrierMessagingService API for sms filtering" into nyc-dev
a8c9c6c593d603a84aa164410b91e2399ceb41ce 23-Feb-2016 Ji Yang <yangji@google.com> New CarrierMessagingService API for sms filtering

Add a new sms filtering method to let the carrier app tell
the platform to keep the message while keep it invisible to
the end user.

BUG: 27292180
Change-Id: I306a7dbde6dcb9929e358b3d1bbda9807ef35943
arrier/CarrierMessagingService.java
arrier/ICarrierMessagingCallback.aidl
2319dd3a66754b8b6ff27a1363c33244a8a9eccc 01-Mar-2016 Julia Reynolds <juliacr@google.com> Merge "Api review: AutomaticZenRule" into nyc-dev
b8f53ee812b75b526c3b481b62334e45609fa70e 18-Feb-2016 Svet Ganov <svetoslavganov@google.com> Notification listener and ranker callbacks on binder threads.

The callbacks for the notification listener and notification
ranker were delivered on binder threads which is problematic
becuase: 1) permission checks and app ops checks would fail
unless the app developer knows to clear binder calling id and
restore it after that; 2) developers need to synchronize their
implementation as they get callbacks on different threads (
arguably callbacks should not be concurrent); 3) this doesn't
follow the pattern in the platform;

Also the code delivering callbacks was catching Throwable which
we shouldn't do in general and also masks bugs in the listener
or ranker implementation. Now that the callbacks are offloaded
to the main listener/ranker thread system code should not be
guarding against Throwable to handle exceptions propagated
over binder calls.

bug:26704777

Change-Id: I171fb41bbe25e6105dd05e4166193dbcec594f82
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
b77f9ec93a11841aacb72d4fecd1bf56f6253254 29-Feb-2016 Ruben Brunk <rubenbrunk@google.com> Merge "Revert "DO NOT SUBMIT: Hide VR features for preview."" into nyc-dev
e5d76e827600c44657e328599ffc9d0e8a258e58 29-Feb-2016 Ruben Brunk <rubenbrunk@google.com> Revert "DO NOT SUBMIT: Hide VR features for preview."

This reverts commit cfa66a2a45c3cec6c338d0d83806fb33d63cfd44.

Change-Id: Ibf36092205b14c29935d1f28be5f5b5f64b1d16c
otification/NotificationListenerService.java
8ccb68af89c68e32b908652436acfa339e034bcc 29-Feb-2016 Ruben Brunk <rubenbrunk@google.com> Merge "DO NOT SUBMIT: Hide VR features for preview." into nyc-dev
f8880561e67e1da246970b49b14285efd4164ab1 26-Feb-2016 Jeff Sharkey <jsharkey@android.com> When system server goes down, crash apps more.

Similar to first patch, but now using new "rethrowFromSystemServer()"
method which internally translates DeadObjectException into
DeadSystemException. New logic over in Log.printlns() now
suppresses the DeadSystemException stack traces, since they're
misleading and just added pressure to the precious log buffer space.

Add some extra RuntimeInit checks to suppress logging-about-logging
when the system server is dead.

Bug: 27364859
Change-Id: I05316b3e8e42416b30a56a76c09cd3113a018123
ersistentdata/PersistentDataBlockManager.java
5081c0de54d05f559dd8b09d2dd2ef5018378959 27-Feb-2016 Adrian Roos <roosa@google.com> Fix crash with decorated custom notifications

Clones notifications before adding them to remote views so
the original stays parcelable on its own.

Also prevents the compatibility inflation from triggering when
an app uses a decorating style to prevent recursive wrapping.
Those styles only exist on N and later anyways.

Also fixes the compatibility inflation in listeners.

Bug: 27368615
Change-Id: Iedf3036bf315dd9c7b476c7e8bcce57de5b5c9c8
otification/NotificationListenerService.java
361e82d399d33e0c45e9a002f2e519f1457a84ad 27-Feb-2016 Julia Reynolds <juliacr@google.com> Api review: AutomaticZenRule

Bug: 27364144
Change-Id: I17fec34d7a277173820bed7829baf5bf905f327a
otification/ZenModeConfig.aidl
otification/ZenModeConfig.java
cfa66a2a45c3cec6c338d0d83806fb33d63cfd44 27-Feb-2016 Ruben Brunk <rubenbrunk@google.com> DO NOT SUBMIT: Hide VR features for preview.

Bug: 26945446
Change-Id: I37e2f9f6ffc65be60bcbef4bdf87da89561ef313
otification/NotificationListenerService.java
0edb50c4bf0a4ae7a40f241c92fa57483ca73552 26-Feb-2016 Julia Reynolds <juliacr@google.com> Api review: NotificationManager

Bug: 27365672
Change-Id: Ic0fd82fb9442d10d6b308182a3859497aa882d07
otification/NotificationListenerService.java
3b84812271cda2386557979503c29f3c530b7f90 26-Feb-2016 Julia Reynolds <juliacr@google.com> Api review: Notification.Builder

Bug: 27364889
Change-Id: I95cee3336f1adb64e37e71a9ab40e68feb1d9c5b
otification/NotificationListenerService.java
f0f629ffe44716b8d900929135142f0ebb9325f4 25-Feb-2016 Julia Reynolds <juliacr@google.com> Introduce IMPORTANCE_MIN.

Allow HUNs for >= IMPORTANCE_HIGH.
Allow full screen intents for IMPORTANCE_MAX.

Bug: 22960980
Bug: 26918284
Change-Id: Id4d2b90ea2e21563dbc716db411060d826e73699
otification/NotificationListenerService.java
7dbef2da936093bf7e9e6bb3059c3825ce1e408d 25-Feb-2016 Arunesh Mishra <arunesh@google.com> Merge "Fix AlwaysOnHotwordDetector recognition event bug." into nyc-dev
f47f173b06e2972bb376da8ff11db3a83c21d10b 19-Feb-2016 Arunesh Mishra <arunesh@google.com> Fix AlwaysOnHotwordDetector recognition event bug.

Parcelables don't work well with inheritance. So changed the
IRecognitionStatusCallback to have onKeyphraseDetected() and
onGenericSoundTriggerDetected() for those respective events.

Made corresponding changes to AlwaysOnHotwordDetector and SoundTriggerDetector.

Bug: 27250528
Change-Id: Ic08a431e7cc4248c688b05c865348170246de576
oice/AlwaysOnHotwordDetector.java
0ffd49cbe0ab4c13fd5528abacade898a8cff481 13-Feb-2016 Jorim Jaggi <jjaggi@google.com> Always consume bottom insets when navigation bar is force shown

When an app requests SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION but we
force show the navigation bar, we need to treat for the app like
there is no virtual navigation bar on the device. Because if you
combine it with FLAG_HIDE_NAVIGATION, you'd expect the navigation
bar gets hidden but it doesn't, so there could be content that
overlaps with the navigation bar.

Bug: 27157904
Change-Id: I088e02eae2e723c35e9cb4873de6b1325458533b
allpaper/WallpaperService.java
f1af917c14677ac4178efa90a1cd6df52d1b4ec9 24-Feb-2016 Andres Morales <anmorales@google.com> Merge "Add SystemApi for retrieving device flash lock state" into nyc-dev
74e9b18b2de2127e081b170cdd4622193cfb7543 22-Feb-2016 Andres Morales <anmorales@google.com> Add SystemApi for retrieving device flash lock state

Bug: 26039090
Change-Id: Ib51c4862d897cc91a0788379c761ed49a2adf271
ersistentdata/IPersistentDataBlockService.aidl
ersistentdata/PersistentDataBlockManager.java
724214a87828ad0fe8a44db796a1f4e74eeae521 19-Feb-2016 Jason Monk <jmonk@google.com> Add TileService settings API

It will be used for long-clicks on TileServices when available.
Otherwise will default back to app info for the app providing the
tile.

Bug: 27269699
Change-Id: Iaf1ee1e6fe6e1357cda32c74bfdc0c26af0f5901
uicksettings/TileService.java
ef37f284364cc45c2ed91bfe04c489d2cedd32d2 12-Feb-2016 Julia Reynolds <juliacr@google.com> Remove Notification Topics.

Bug: 23220370
Change-Id: Ifbcdbab1cf6974c192483091512f75762784a98e
otification/NotificationAssistantService.java
1998ee56285419ff7fea0ec9a247e31d1d27a0ab 11-Feb-2016 Julia Reynolds <juliacr@google.com> Alarm can end time-based rule.

Bug: 21069008
Change-Id: I857d85a32eb44ca873da4a9f19323c48a922ab9f
otification/ZenModeConfig.java
d560729ce3a6f3d51c03d39768815b4c49f7a8f4 05-Feb-2016 Julia Reynolds <juliacr@google.com> Update DND visual interruption choices.

Change-Id: I7050264839c566dcef1dd01d155dda694a8d1ec0
otification/NotificationListenerService.java
otification/ZenModeConfig.java
10c63d8a12caf5117524799efea95120f8b0845b 05-Feb-2016 Chris Wren <cwren@android.com> move assistant to system API

Bug: 26693581
Change-Id: I7e29b8521e2c33683b8032e63da734cfde1dfcc9
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
3b543ca859989af2ba9d1bc7b5393dae7ffed874 05-Feb-2016 Chris Wren <cwren@android.com> Revert "move assistant to system API"

This reverts commit c441856bb6c5712efab9d5ef422c95210884a1d8.
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
c441856bb6c5712efab9d5ef422c95210884a1d8 28-Jan-2016 Chris Wren <cwren@android.com> move assistant to system API

Bug: 22455414
Change-Id: I2fbb37fceef3058bc70d540a58fdcd8af5e7a76d
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
3588e597d271ecbd132672446c6edc98c0a42b4e 01-Feb-2016 Julia Reynolds <juliacr@google.com> Merge "Re-SystemApi some fields/method that aren't in use."
a62496d8f7cb9048331451af07466b1edc568c7d 29-Jan-2016 Julia Reynolds <juliacr@google.com> Re-SystemApi some fields/method that aren't in use.

Bug: 26816334
Change-Id: Ib01e7856cd65e294c018017c600f8b3dce2be844
otification/Condition.java
otification/ConditionProviderService.java
d1b140914d50275960305bdd48e3a72034173b25 01-Feb-2016 Adam Powell <adamp@google.com> Merge "Clear/restore calling identity for ChooserTargetService"
7eadc1bf686de4df0801252263c887ed2c326090 01-Feb-2016 Rubin Xu <rubinxu@google.com> Canel all work notification when the profile is turned off

When the work profile is turned off, all work apps are killed and the
profile marked as stopped. Cancel all pending work notifications
immediately in this case, with a new reason.

Bug: 22541941
Change-Id: I97935c3bac3eba1e9c38f7449ebcc182f6c66769
otification/NotificationAssistantService.java
34a5cef6298cc44fc0614c4747c4b17137cff441 29-Jan-2016 Jason Monk <jmonk@google.com> Let SysUI watch TileService's dialog lifecycle

That way it can better handle tokens and service binding.

Change-Id: I9b882181ecbe52a65e731a2c45f1d296315884b4
uicksettings/IQSService.aidl
uicksettings/TileService.java
cb95ae2ada2e59156f7e048545759c2c6afd4a6a 29-Jan-2016 Adam Powell <adamp@google.com> Clear/restore calling identity for ChooserTargetService

Bug 26604668

Change-Id: I60a8be72bf43cec802697af3b06579453af2d5dc
hooser/ChooserTargetService.java
344744b49633a7f8aa0c8e43469bbfcf9d8e2cab 29-Jan-2016 Jeff Sharkey <jsharkey@android.com> Exposing file:// beyond your app is bad, m'kay?

For several releases now we've told developers that sharing raw files
between apps is a recipe for trouble. There are at least three major
problems with sending raw files:

-- Apps sending generic intents can't know who is at the other end,
so they may not have access to shared storage locations. This is
more likely now that runtime permissions require apps to explicitly
ask users for permission.

-- Apps making files in their private storage world-readable has been
deprecated for several releases, and now in N it's fully blocked. If
we let these intents through, the receiving app would fail to open
the file, when the real blame rests on the sending app.

-- Devices with user profiles can't share raw files when using
cross-profile intent filters, since filesystem access is fully
locked down between users.

The time has finally come to communicate clearly that if you're
sharing content between apps, you need to use content:// Uris. We
added the simple FileProvider several years ago to give apps a clean
way to migrate with minimal work on their part.

Bug: 26860922, 9069185
Change-Id: I075f627f6a0d6c7fca2c090ca133b9aae9801c64
oice/VoiceInteractionSession.java
c573aa7c3a886f88dc308958268053a8a68f031e 27-Jan-2016 Jorim Jaggi <jjaggi@google.com> Merge changes I80100f39,I4b39c1c4,I65ce9a23,I5094a137,Id898752f, ...

* changes:
Make sure SysUI is not constantly redrawing status bar
Fix app staying in drag resizing when undocking
Fix flicker when dismissing non-docked stack
Start drawing immediately
Improve dismiss/scrolling handling in recents
Dim harder when dismissing
a4a58efe8203d63a9a6bf78b0fa9f2992b25871b 27-Jan-2016 Jorim Jaggi <jjaggi@google.com> Fix app staying in drag resizing when undocking

When dismissing the docked stack, the fullscreen stack stayed in drag
resize mode because it got a relayout, but because the bounds didn't
change (it switches to the fullscreen layout a bit earlier) it never
called WM.relayoutWindow, so it stayed in drag resize mode indefinitely.

To fix this, introduce forceRelayout in Window.resized(), which makes
sure the client always calls relayoutWindow. Set this to true whenever
drag resizing is changing.

For some very weird reason this also broke that home button was not
responding anymore.

Bug: 26806532
Change-Id: I4b39c1c419a166aa7093c31226f2a4915f642328
allpaper/WallpaperService.java
a772e5fc062c8de48cb9c1d61755110f6b2e189b 25-Jan-2016 Arunesh Mishra <arunesh@google.com> SoundTrigger API improvements.

This CL implements the SoundTrigger API improvements as given in b/22860713. Only the java-level
parts are implemented in this CL.

Key changes include:

* Addition of a SoundTriggerManager/SoundTriggerDetector system API to manage
the sound-trigger based sound models.
* Addition of a SoundTriggerService service that manages all sound models
including voice (keyphrase) and sound-trigger based models.
* Includes logic to write sound-trigger based models to the database.
* VoiceInteractionManager service now uses SoundTriggerService instead of
SoundTriggerHelper.

Bug: 22860713
Change-Id: I7b5c0ed80702527c4460372efeb5e542d3693a69
oice/AlwaysOnHotwordDetector.java
0122f651d1a1de8ccfe6e2789e150507977189c7 22-Jan-2016 Andrei Stingaceanu <stg@google.com> Suspend apps - disable notifications

Disable notifications and posts for suspended apps by
verifying if the package is suspended in NotificationManagerService
where AppOpsManager.OP_POST_NOTIFICATION is checked.

Note that the notificationEnabled user preference is
preserved when unsuspending.

In a following CL will make the "Block all" notifications
setting while an app is suspended (in Settings -> App Info)
readonly so that the user can not turn notifications on.

Bug: 22776761
Change-Id: Ie8edba508bd23406445f9a014404b6d3b17cb223
otification/NotificationAssistantService.java
0af6fa7015cd9da08bf52c1efb13641d30fd6bd7 18-Jan-2016 Amith Yamasani <yamasani@google.com> Voice Interaction from within an Activity

This allows an app to show a voice search button
and invoke a voice interaction session for use
within the activity. Once the activity exits, the
session is stopped.

Test application has a new activity that
demonstrates it with the test voice interaction
service.

This initial version is functional enough for
an integration test, with some more tests
and improvements to come later.

Bug: 22791070
Change-Id: Ib1e5bc8cae1fde40570c999b9cf4bb29efe4916d
oice/VoiceInteractionManagerInternal.java
oice/VoiceInteractionServiceInfo.java
oice/VoiceInteractionSession.java
cbb2382992bdab4cc6d429fd5d015d68d1912f8a 23-Jan-2016 Jorim Jaggi <jjaggi@google.com> Merge "NullPointerException when starting VoiceInteractionManagerService" am: b7fbe1104f
am: 5d6da4eab0

* commit '5d6da4eab024c13afbfef5cfec0f9f2b19168318':
NullPointerException when starting VoiceInteractionManagerService
b7fbe1104fd93b426dd6a6f2ed9dfc9cb12b4dd8 23-Jan-2016 Jorim Jaggi <jjaggi@google.com> Merge "NullPointerException when starting VoiceInteractionManagerService"
2e95a488e0a12d4263d101e888fdd89fd123aec3 15-Jan-2016 Jorim Jaggi <jjaggi@google.com> More optimization while dragging docked divider

- Make sure mPendingBackdropFrame gets also set when if the window
triggers a relayout on it's own, so it doesn't call into window manager
all the time.
- Set the insets of the docked divider to empty so we don't trigger a
layout when we are just moving it - it doesn't need it in any case.
- Send a window move message to the divider when it moved
- Update attach info in all move cases, update light center

The whole resize operation now only takes around 4ms per frame, and
leaves a lot more resources for the apps to do configuration changes.

Bug: 25015474
Change-Id: Ica48129570a0fc858a89c21f46abf3442efb0224
allpaper/WallpaperService.java
9498e8a8d2deb7b0a2e964d5d3c5d3b8747610e9 30-Nov-2015 Neil Fuller <nfuller@google.com> Fix @code escapes

The body of {@code} must not be HTML escaped. This is one of
several changes that fix the source in conjunction with a
doclava fix.

Bug: 25757239
(cherry-picked from commit 71fbb81b14958b80fe55738607740c6630e4e9da)

Change-Id: I19dafddc6501be6fee362c396ac5bbdc934ae39d
reams/DreamService.java
extservice/package.html
43b70cdc395d3a6cf3bd0a78b686a7f5d3ed86e0 14-Jan-2016 Julia Reynolds <juliacr@google.com> Allow condition providers to specify a rule instance limit.

Bug: 25563007
Change-Id: I1149cb5be59668f8869c81cb46c5ead49aec933a
otification/ConditionProviderService.java
561e219033a1d53f4589cdc734aa1c4bdffa84d3 13-Jan-2016 Jason Monk <jmonk@google.com> Merge "Round out the QS API"
75e097965cc273d33192555b0e65de3dbc1753ce 29-Jul-2015 Clara Bayarri <clarabayarri@google.com> Request Keyboard Shortcuts for SysUI Dialog via Window

Keyboard shortcuts are requested via WindowManager, and
the request pipes through to the view root and the window
callback.

Bug: 22405482
Change-Id: Ic0071e91c7b554be3ac9df71e9539ee8a60e822e
reams/DreamService.java
9429513cc3ea6e58e330865bd621b57cb3477551 12-Jan-2016 Jason Monk <jmonk@google.com> Round out the QS API

- Add startActivityAndCollapse, to make collapsing the shade easy
- Add isSecure()
- Add isLocked()
- Add unlockandRun(Runnable)
- Add unavailable, active, and inactive states

The states are added to allow consistent UI across OEM devices, by
allowing UI tweaking and tinting to match system tiles with custom
ones.

The combination of isSecure() and isLocked() and unlockAndRun(Runnable)
allows all combinations of launching show when lockend and triggering
an unlock when needed for sensitive tiles.

Change-Id: Iade98ad9f2c22aa174e62090d8ccd44c86f3bb3c
uicksettings/IQSService.aidl
uicksettings/IQSTileService.aidl
uicksettings/Tile.java
uicksettings/TileService.java
7dbcbad577a32f16d75dde3fe1412c56c5a2a399 15-Dec-2015 Edward Savage-Jones <edward.savage-jones@sonymobile.com> NullPointerException when starting VoiceInteractionManagerService

If an end user disables the package that implements support for
Voice Assist (Google App) and reboots, an NPE is thrown during boot,
which results in the device getting stuck at the boot animation.

Recovery is not possible without USB debugging enabled, leaving factory
reset/user data wipe as the only other option.

Change-Id: I9c161fff7f096deee13bf8e37d951e20898ae3ff
oice/VoiceInteractionServiceInfo.java
85aa6cb1779635bb3b6b3ba739fc4ee3813bba3a 08-Jan-2016 Julia Reynolds <juliacr@google.com> Notification banning updates.

- Dismiss notifications from banned topics
- Don't ban all topics when banning an app.
- Block notifications from banned topics.

Bug: 26154396
Change-Id: I1d94e6176a413386d89f8dc1c4899aee8a8a73b8
otification/NotificationAssistantService.java
2d20a4dcc60a4d87ddf536d40cf00a59fa2d9479 08-Jan-2016 Chris Wren <cwren@android.com> Merge "allow listeners to disable themselves"
5942cc59abbdd68fdb46139247a20b961f0c633d 08-Jan-2016 Julia Reynolds <juliacr@google.com> Merge "Sort notifications by importance."
0421e6d58635f347f785ae4c78e8b2a5da327138 08-Jan-2016 Julia Reynolds <juliacr@google.com> Sort notifications by importance.

- Importance trumps 'package priority'
- Only notifications with a high enough importance can be intrusive
- default and lower importance notifications don't appear on the lock
screen and appear below the speed bump in the shade

Also, stop downgrading MAX importance noisy notifications.

Bug: 26425560
Change-Id: Ibb952eb6f8d0d336a1060332f58c8ba622f29867
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
66c89c15a0baabf001e69498dbc09903f72cc63d 06-Jan-2016 Jason Monk <jmonk@google.com> Add API for System QS tiles to set status icons

Allow system apps that have a Quick Settings tile to show a
status bar icon. If the quick settings tile is removed, the
status bar icon will no longer be shown.

Change-Id: I875b962bbdf4ff863012de688a3dd29a8d7e11ab
uicksettings/IQSService.aidl
uicksettings/TileService.java
ab41eecf22352f54167ce9a272a397715ffd0015 05-Jan-2016 Chris Wren <cwren@android.com> allow listeners to disable themselves

This decouples the user permisson grant from the
bound state of the listener. This allows listeners
that are only relevant sometimes to avoid being
bound as a foreground service all the time.

Bug: 19232554
Change-Id: I9ab078630af5a10c6878d3f19ba80661299713d5
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
51c444be145815e5f3d8321126f22df5792377eb 06-Jan-2016 Jason Monk <jmonk@google.com> QS Customize panel cleanup

- Use better service management to ensure onTileAdded and onTileRemoved
are sent.
- Fix not always registered as tunable bug.

Bug: 26423350
Change-Id: I56156de8e0edf903509dac594b471700068ebe3e
uicksettings/TileService.java
5a34cb8a73585526a6df2255f9a8fe0321bc701d 06-Jan-2016 Jason Monk <jmonk@google.com> Merge "More QS Tile modes in the API"
617215874db9c208a74dc97f4133e6b6fc96271c 05-Jan-2016 Julia Reynolds <juliacr@google.com> DND visual interruptions: prevent screen on.

Bug: 25423508
Change-Id: Ie935a2051e1ae774fbeaf624f3599b2b1bb8666d
otification/NotificationListenerService.java
otification/ZenModeConfig.java
fe8f6826ce3c2beeb1fce54c67978ce69f849407 21-Dec-2015 Jason Monk <jmonk@google.com> More QS Tile modes in the API

Allow tiles to request when they are bound instead of doing it
automatically for them when in the listening state. Only one
of these modes is allowed for a given tile, meaning it can either
push updates when it thinks they matter, or it can be told when
to update.

Change-Id: I165b39dddb836df90d253aeb5ebea48e62ea0dae
uicksettings/IQSService.aidl
uicksettings/IQSTileService.aidl
uicksettings/Tile.java
uicksettings/TileService.java
29b7dd8d69323dae14e276b97330c5992b2af408 04-Jan-2016 Chris Wren <cwren@android.com> Merge "implement assistant service connection"
d5a204f16e7c71ffdbc6c8307a4134dcc1efd60d 21-Dec-2015 Jason Monk <jmonk@google.com> Better service management for QS 3rd party tiles

Better wrapper around the service that will handle rebinding
when it dies, binding when it becomes available, and forwarding
along all messages to the service once it binds.

Also better handling of too many services at a time. Will only
ever bind to at most 3 tiles and will manage which ones are most
important to show based on pending clicks, last update, etc.

Change-Id: I5f4da0bc751f7eb25baa32e5c0bb9f1bc418f5bb
uicksettings/TileService.java
51017d0e23ce9855fabcf786a2067ceb19121fbc 15-Dec-2015 Chris Wren <cwren@android.com> implement assistant service connection

Added a guest-mode to ManagedServices.
Like system services, the lifecycle of a guest is not managed.
Unlike system services, guests are not considered privledged.

The Assistant gets all the usual listener events.
Implemented adjustImportance.
Future work: enqueued, clicked, visibility, removed, annotations

Bug: 22455414
Change-Id: Ic41c0bf625b5e98cb577b49098bba23a539bb507
otification/INotificationAssistant.aidl
otification/INotificationListener.aidl
otification/NotificationAdjustment.aidl
otification/NotificationAdjustment.java
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
55bed957788e853d3ee3f674dd6eea79ad3a193b 18-Dec-2015 Ruben Brunk <rubenbrunk@google.com> Merge "Add a framework service tracking VR mode state."
161ccb5dfe2fb4dc8b1a41a6465fd0c6b839a294 17-Dec-2015 Jason Monk <jmonk@google.com> Small fixes in TileService

Change-Id: I4d10c43d8e40697d144802067fcd4f95d866e4e0
uicksettings/TileService.java
dd18a0b69537954d1cc34929a1386deb54f12b14 05-Dec-2015 Ruben Brunk <rubenbrunk@google.com> Add a framework service tracking VR mode state.

- Implement a "VR mode" that may be enabled by a focused Activity.
- Add a system service that tracks the current VR mode state and notifies
other core framework services of mode changes.
- Extend NotificationListenerService to allow the bind/unbind lifecycle
of specified listeners to be triggered by system events.

Bug: 22855417
Bug: 25479708

Change-Id: I1ac8692bbb5521bb6c7cfb9d2b56b98b720f8568
otification/NotificationListenerService.java
7eba593b8d88a9b087f06ef146d82c4c77a92473 11-Dec-2015 Julia Reynolds <juliacr@google.com> Aidl it all!

Change-Id: Ic12e2305a947749a714102a8133321ae07599950
otification/INotificationAssistant.aidl
otification/NotificationAdjustment.aidl
otification/NotificationAdjustment.java
otification/NotificationAssistantService.java
1ed71f3722830271602d2d3b2bbd1ba692f75835 12-Dec-2015 Andreas Gampe <agampe@google.com> Frameworks/base: Fix Notification code

Avoid a NullPointerException in NotificationListenerService when
a corrupt notification is found.

Fix not using the return of trim() in NotificationManagerService.

Bug: 19797138
Change-Id: I84dc15eba7b4052a774eb69d36591d100105f169
otification/NotificationListenerService.java
41c264bae10dda0a1430251aa982dcf79c728bdc 11-Dec-2015 Julia Reynolds <juliacr@google.com> Merge "Add importance to notification guts."
bdf3376616c276ed18a51185351b44fd16eeae29 04-Dec-2015 Chris Wren <cwren@android.com> use importance instead of score

Change-Id: Id3b0a074671943b4fcabb63fe990cbfd1e46bdfd
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
otification/StatusBarNotification.java
ead00aac154f76abfc9739d76b100597b3e42d96 07-Dec-2015 Julia Reynolds <juliacr@google.com> Add importance to notification guts.

Note: the guts are still trucated to the height of the notification.
The slider initially shows the importance of the individual notification,
but changing the slider changes the importance for the whole group
of notifications.

Bug: 22451710

Change-Id: Id6de3aaace2bdb88a8cc5db517002dc7f0e349ae
otification/NotificationListenerService.java
5d25ee7a006fda7150ba251cff92c27130611f88 20-Nov-2015 Julia Reynolds <juliacr@google.com> Topics can now have an Importance.

Bug: 22451710
Change-Id: I627121da6c4b85492715a8e8a099656dca52b734
otification/NotificationListenerService.java
cf7021e827dde0047bd36d32b734893e98d988fe 03-Dec-2015 Chris Wren <cwren@android.com> Merge "Notification Assistant API"
9fa689f8b614d32f36b5f2de2e3065f4ad6b2358 20-Nov-2015 Chris Wren <cwren@android.com> Notification Assistant API

This API allows a single assistant on the device to help the
user manage their notification stream by taking actions on
individual notifications:

- modifying their priority up or down when they are posted
- possibly changing if and how the notification interrupts the user
- adding annotations under notifications

Bug: 22455414
Change-Id: Idf47972bb71c83f1dc1c9ec68a6fa92ac4fc522f
otification/NotificationAssistantService.java
otification/NotificationListenerService.java
8f7f3184d55850b1c4d2036319794151f564e9c0 18-Nov-2015 Jason Monk <jmonk@google.com> Allow QS tiles to open dialogs

Add a TYPE_QS_DIALOG window type, that is in the same layer as
apps and dialogs and such. It is guarded by having a token
that is granted by SysUI after a click has occured. If the
app shows a dialog before listening finishes (QS closes) then
the token will stay granted until the tile is removed by the
user, otherwise the token will be removed immediately to avoid
later dialogs.

Also fix a couple tiny TileService issues:
- Stop/Start listening reversed
- Fix javadoc referencing wrong action

Change-Id: Iedcdd5fd9a2af2b33eb7f6f17bb0e6c997879876
uicksettings/IQSService.aidl
uicksettings/IQSTileService.aidl
uicksettings/Tile.java
uicksettings/TileService.java
568f4de11a87308cbcb888083f02818a8290a7d7 03-Dec-2015 Neil Fuller <nfuller@google.com> Merge "Fix @code escapes"
c8e54e8d5ec038ee6f520ee95948e2ef20490e97 30-Nov-2015 Julia Reynolds <juliacr@google.com> Cleanup zen rule instances.

1. When a user revokes zen access
2. When a user clears data

Bug: 25472361
Change-Id: Ia439a7c2bd6dc07a60a374caf4157508131e3578
otification/ZenModeConfig.java
71fbb81b14958b80fe55738607740c6630e4e9da 30-Nov-2015 Neil Fuller <nfuller@google.com> Fix @code escapes

The body of {@code} must not be HTML escaped. This is one of
several changes that fix the source in conjunction with a
doclava fix.

Bug: 25757239
Change-Id: Ib38a0fa2dd2a3d68e467f78a812071e763d7e881
reams/DreamService.java
extservice/package.html
bbadff8603ca6922a0ef89338bee5b59d6dcf641 06-Nov-2015 Jason Monk <jmonk@google.com> Add Quick Settings API

It is a little bit limited right now, but it contains
the lifecycle of a tile getting added/removed, and
listening/not listening and clicks.

SysUI side will need some cleanup later on.

Change-Id: I4db803c8a271f8bf44f2ef710517969a84a95cf0
uicksettings/IQSService.aidl
uicksettings/IQSTileService.aidl
uicksettings/Tile.aidl
uicksettings/Tile.java
uicksettings/TileService.java
32bb7bc314e9ce1ad2f870818aafff83ddec3704 18-Nov-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #25673462: Shamu update from MMB29J -> 29K does not complete"
c83189b5d6ab2fe5f1c38cbe22254f4995379c88 17-Nov-2015 Dianne Hackborn <hackbod@google.com> Fix issue #25673462: Shamu update from MMB29J -> 29K does not complete

The direct path to the package manager returns null on failure, oops!

Change-Id: Id33ea299b605a59b0703dab200bafb754dd66e78
oice/VoiceInteractionServiceInfo.java
f612869ae1190e0885b58a3c33b23d36d7732f06 05-Nov-2015 Julia Reynolds <juliacr@google.com> Allow DND mode to suppress visual interruptions.

Bug: 25423508
Change-Id: Idd8242e4bc00a749dbe0b5503c458375fc017072
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
otification/ZenModeConfig.java
253a20fad8703e21c7298fe66e0f3f53d4e63c14 03-Nov-2015 Jorim Jaggi <jjaggi@google.com> Fix black holes and flickering in docked resizing

When we start a resize with the docked stack divider,
set the surface background to be full-screen, and use
the traditional surface clipping/positioning in window
manager to adjust the size. This ensures that we don't
have any black holes because of asynchronicity (except
at the very beginning, but this can be worked around
later), and the position of the right/bottom activity
is always in sync with the position of the divider.

Also fix a bug in NonClientDecorView where the first
request to draw was dropped (because the thread hasn't
started up yet), and the main thread was waiting for it
indefinitily.

Bug: 24507122
Change-Id: I623bd48d5be64fac2fba45241b84f265944d200d
allpaper/WallpaperService.java
43f1befac23564fc26c9329ce4e56d32f03dfab9 04-Nov-2015 Julia Reynolds <juliacr@google.com> Delete unused code.

Change-Id: I49660236b4d40010885b2ee3f8d03b5b258a035e
otification/ConditionProviderService.java
otification/IConditionProvider.aidl
c279b996f13e644782633853612452860e596308 30-Oct-2015 Julia Reynolds <juliacr@google.com> Use preexisting DND access setting for condition providers.

So that apps that are already whitelisted don't have to be whitelisted
again if they add a CP.

Bug: 22977552
Change-Id: I4042d531178ab63d5d1e5b963fc081e3ed523835
otification/ConditionProviderService.java
d9228f1135e51d9380bad990d7178490ec474dbd 20-Oct-2015 Julia Reynolds <juliacr@google.com> Stop populating RemoteViews in Notifications.

Builder now stores its parameters directly in the
Notification object itself, reducing the amount of copying
needed to construct the final Notification as well as
converging the two data structures. All Builder data is now
captured in Notification, so it is easy to reconstruct
a Builder for any Notification object.

This obviates all stripping/unstripping operations because
all Notification objects start life "stripped" of their
RemoteViews, which must be constructed explicitly by clients
(presumably listeners wishing to show the notification to
the user in its conventional form).

Note: While contentView, bigContentView, and
headsUpContentView are being @Deprecated in this CL,
specifying custom RemoteViews is definitely still supported!
You just have to use Builder methods to do so.

Bug: 20153922
Change-Id: I81f8ffed0eb76084b2f2b25b97e325858f0a1d05
otification/NotificationListenerService.java
c72c931eb8c5c336b9cb8b600b9e777ca169687c 16-Oct-2015 Julia Reynolds <juliacr@google.com> resolved conflicts for 429e7dcd to master

Change-Id: Id0aca75915a054253d032d333defba1a38b80abe
8e2d2bbeec74b02960504a09e02e601ee2cf5e0e 01-Oct-2015 Julia Reynolds <juliacr@google.com> Add 'until next alarm' option to QS zen panel.

Unlike the implementation in LMR1, this is a countdown condition
(a countdown until the time of what was the next alarm when the
rule was created). The rule will not change if alarms change.
Also, alarms up to 7 days in the future will be considered.

Bug: 21648799
Change-Id: Id7fa9dbdbad1539e4da19b1d0e0c4395bb13e6cb
(cherry picked from commit 0842fe87b27b9e4a7aecfec25b93dba2d39f398a)
otification/ZenModeConfig.java
0842fe87b27b9e4a7aecfec25b93dba2d39f398a 01-Oct-2015 Julia Reynolds <juliacr@google.com> Add 'until next alarm' option to QS zen panel.

Unlike the implementation in LMR1, this is a countdown condition
(a countdown until the time of what was the next alarm when the
rule was created). The rule will not change if alarms change.
Also, alarms up to 7 days in the future will be considered.

Bug: 21648799
Change-Id: Id7fa9dbdbad1539e4da19b1d0e0c4395bb13e6cb
otification/ZenModeConfig.java
4fe98d6d4cc4898809b81d001f6b8a1b71b08f3a 06-Oct-2015 Julia Reynolds <juliacr@google.com> Remove rename automatic zen rule.

Use zen rule id as key when finding matching rule to update.

Bug: 22977552
Change-Id: I7beeb5688aabe409a9a72aaa3aa27932d590c489
otification/ConditionProviderService.java
otification/ZenModeConfig.java
56106ff337e056d2daa5862545f4a06796d9e9a1 30-Sep-2015 Julia Reynolds <juliacr@google.com> Add id and creation date to Zen rules.

Bug: 22977552
Change-Id: Ic79714ebbcc895e55ee87ccfc0e03b1735255ef3
otification/ZenModeConfig.java
a47a27ffd92f172298c2728040e49d502a2d6c87 24-Aug-2015 Julia Reynolds <juliacr@google.com> Third party DND provider APIs.

Bug: 22977552
Change-Id: I8c1bac317e9aa5d9565afe3f0c4e2be8fc34e6a9
otification/ZenModeConfig.java
b0a773f6b338f8ec35d9faaa3b566f482bdc2f92 25-Aug-2015 Julia Reynolds <juliacr@google.com> Allow third party condition providers.

Bug: 22977552
Change-Id: I3d8689f52daa9376496e14997a6dd7862fb3ade6
otification/Condition.java
otification/ConditionProviderService.java
ddbe4ca1ca3c585cf86dac3823947ebacb7c9be6 14-Aug-2015 Xiaohui Chen <xiaohuic@google.com> Clean up USER_OWNER in notifications

Bug: 19913735
Change-Id: Ib6c2ed11eee6adf062a6dff00c99e62945153f9e
otification/ZenModeConfig.java
bbe1682b1652c37b66609676e5829517279ff141 30-Jul-2015 Daniel Sandler <dsandler@android.com> Merge changes from topic 'fix-media-notifications' into mnc-dev

* changes:
Fully support Icons in Notification actions.
Fix media notification action icons.
68079d54f3690885df9c5bbb691090633f3ef541 22-Jul-2015 Dan Sandler <dsandler@android.com> Fix media notification action icons.

In addition to cleaning up some bare references to the icon
slot, we now apply updates to notification RemoteViews in
the context of the supplying app's package. This ensures we
can find the drawables inside any Icon objects that were
constructed without a proper package name, such as is the
case with Actions (because the builder and constructor are
Context-free and so don't know the package name).

This CL also makes clear what was previously only implied:
Non-resource action icons are not actually supported yet
since they can't be pushed to TextView compound drawables
using today's RemoteViews APIs. That will require an API
change.

Bug: 22600607
Change-Id: Ie6b88aed36e4db05be35f843ea3bc1898d4a5c96
otification/StatusBarNotification.java
57dd737443a174379eb638450e4888500d8e4a23 28-Jul-2015 Dianne Hackborn <hackbod@google.com> Work on issue #21516866: Implement voice interaction in ResolverActivity

The main change here is to not allow the dialog to go in to its "focus
on the last app the user selected" when running in voice interaction mode,
instead just always giving a simple list.

This also fixes some problems with cleaning up active commands when
an activity finishes and not forcing the current session to go away
when the screen is turned off.

Also added some debug help, having activity print the state of the
voice interactor.

Change-Id: Ifebee9c74d78398a730a280bb4970f47789dadf5
oice/VoiceInteractionSession.java
oice/VoiceInteractionSessionService.java
20df62345910ad390a3bb321990987757db0831d 22-Jul-2015 Jorim Jaggi <jjaggi@google.com> Merge "Add callback to voice interaction session for lockscreen shown" into mnc-dev
19695d97118d74aa7f54ba09b178e65378825cc0 21-Jul-2015 Jorim Jaggi <jjaggi@google.com> Add callback to voice interaction session for lockscreen shown

Bug: 22402726
Change-Id: Iaf83e2f2b0389d74b6ecf480aa91a34443803f7b
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionSession.java
1b4447f728eab763beb2da28d3cf64574729c556 20-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22564918: Request is inactive

Add Request.isActive() API. Also improve documentation to tell
people what things cause it to become inactive. And fix a race
where we were modifying the active list from outside the main
thread without locking it.

Change-Id: I9248e014126cb121612edbe595108ace753456e2
oice/VoiceInteractionSession.java
78ead58df03e476d656c7e875fff9ade13b727c1 20-Jul-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #22531747: Assist info should declare if user has disabled..." into mnc-dev
17f693520da8977c4a60f5b4be3be035cba7146c 18-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22531747: Assist info should declare if user has disabled...

...context and/or screenshot

Added new API to find out what contextual data has been globally disabled.

Also updated various documentation to make it clear what kind of contextual
data you will get (and when it will be null).

Also added a new Activity.showAssist() API because... well, I was already
in there, it was easy to do, it is safe, and maybe people will build cool
things with it.

Change-Id: Ia553d6bcdd098dc0fce4b9237fbfaca9652fc74b
oice/VoiceInteractionSession.java
666d82a6d5c6a90e87591aea1aabac3d647cd541 16-Jul-2015 Adam Powell <adamp@google.com> Update ChooserTarget constructor to take ComponentName, Bundle

Simplify ChooserTarget handling by requiring a target component and an
extras bundle instead of a full PendingIntent/IntentSender. This
simplifies the handling of URI grants from sending apps.

Prune ChooserTargets that point at ComponentNames that don't share a
package with the original matching Activity target or that aren't
exported so that we don't show the user something they can't launch.

Bug 22516282

Change-Id: I3439c0910b4fa4f95c7a881b529942c96ffc953e
hooser/ChooserTarget.java
hooser/ChooserTargetService.java
hooser/IChooserTargetResult.aidl
f6586cbde7d4612963eb2e8a2413235630676b83 16-Jul-2015 Dianne Hackborn <hackbod@google.com> Merge "Implement issue #22403908: Enable assistant to refuse context sharing" into mnc-dev
1de1186d28f0ca7c0b6298edfa8ae497e651ba87 15-Jul-2015 Dianne Hackborn <hackbod@google.com> Implement issue #22403908: Enable assistant to refuse context sharing

New APIs allow the voice interaction service to set/retrieve a filter
for which of the show flags are allowed.

Change-Id: I588cbe55afee0548ad3afa22d3a7d3bc43cb54a6
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
d0a159025a06a7400ab3dfca1d754494947092e0 15-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22124996: VI: Command Request not Active

This stupid thing wasn't even completely implemented
in HandlerCaller! D'oh!

Change-Id: I0dac42c208fa0f08a6e20a6cb17b072f51efcaa7
oice/VoiceInteractionSession.java
280a64e793d081847c5dcea23ed9be38aa5332d2 13-Jul-2015 Dianne Hackborn <hackbod@google.com> Improve tracking of screen on reasons.

- New screen on app op to record the last time each app has
caused the screen to be turned on.
- New battery stats event that tells us the reason the screen
has been asked to turn on.
- Propagate out power manager API to specify the reason a caller
is asking to have the screen turned on.

Note that currently the window flag to turn the screen on bypasses
much of this because it is being handled in the window manager by
just directly telling the power manager to turn the screen on. To
make this better we need a new API where it can specify who it is
calling the API for.

Change-Id: I667e56cb1f80508d054da004db667efbcc22e971
reams/Sandman.java
782d49826862cbdc9d020fc9d85f8a6f64675dcb 09-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22328792: Fix scalability issues in AssistStructure

We can now stream the AssistStructure across processes, avoiding
IPC size limitations for large structures. There is also a new
API that gets called on the VoiceInteractionSession if there is
a failure retrieving the assist data.

Also fix issue #22351981: Runtime restart due to ANR in system server,
getting rid of a deadlock.

And also tweak object lifecycles to try to avoid keeping around
in an app the previous AssistStructure after we request a new one.

Change-Id: Ifb136a0d31a14e56a8db6b90768d9fc65557a17f
oice/VoiceInteractionSession.java
9f8e1f5d043a8c3980c1cc38779752c11620cf13 02-Jul-2015 Filip Gruszczynski <gruszczy@google.com> am aabc9869: am 03850591: Handle outsets when resized is called due to rotation.

* commit 'aabc9869a95928660271b7022e2756fff2654013':
Handle outsets when resized is called due to rotation.
aabc9869a95928660271b7022e2756fff2654013 02-Jul-2015 Filip Gruszczynski <gruszczy@google.com> am 03850591: Handle outsets when resized is called due to rotation.

* commit '03850591954faf5280fd581dd04cd6958eda0124':
Handle outsets when resized is called due to rotation.
6cc53743f5d37d7761a3bb924b380dd29d46e26d 02-Jul-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #20672970: Notifications are not dismissed on hot word detection" into mnc-dev
4e88bcd39918197c78b148afe40a08b6adcace1e 01-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #20672970: Notifications are not dismissed on hot word detection

Add new VoiceInteractionSession.closeSystemDialogs() API that closes
everything except the session itself.

Change-Id: If45f1e120d8ca095b6c8055b6485acb5e710820e
oice/VoiceInteractionSession.java
03850591954faf5280fd581dd04cd6958eda0124 01-Jul-2015 Filip Gruszczynski <gruszczy@google.com> Handle outsets when resized is called due to rotation.

Rotation might change while the wallpaper is displayed. If outsets are
present, this must trigger a resized callback and the wallpaper must
take these accounts immediately into account before requesting relayout.

Bug: 22209764

Change-Id: I97f2670f384ccac792e7c2727eb0ef017ec66188
allpaper/WallpaperService.java
d40c423b1cdccd61ed411b0b9e3fbefd47e99f9c 01-Jul-2015 Filip Gruszczynski <gruszczy@google.com> Merge "resolved conflicts for merge of 300ccf4a to mnc-dev" into mnc-dev
593334ab70a8341c7d24d71a377ab5617e3f4ab7 30-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #22124996: VI: Command Request not Active

Just forgot to add the request to the active set.

Also eradicate a bunch of old cruft that has been replaced
by the final APIs, and improve voice interaction test to
sit fully on top of the final APIs and have a test for
command request.

Change-Id: Ieff7a6165ebf2a4c5fb80c1ebd020511a2ae63ee
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
oice/VoiceInteractionSessionService.java
2987f616faca534a792686a53304c9932634310c 01-Jul-2015 Filip Gruszczynski <gruszczy@google.com> resolved conflicts for merge of 300ccf4a to mnc-dev

Change-Id: Ia315e314bfde0c066a2c25d93f8cbdc71fee0a14
300ccf4ab53e074fa5dfbac7c8eb7a4818b3ff74 30-Jun-2015 Filip Gruszczynski <gruszczy@google.com> am 0ec1328f: Calculate outset hint when adding window.

* commit '0ec1328f85a08a610868856c688ebb8196c79c17':
Calculate outset hint when adding window.
0ec1328f85a08a610868856c688ebb8196c79c17 25-Jun-2015 Filip Gruszczynski <gruszczy@google.com> Calculate outset hint when adding window.

Outsets aren't dynamic so they are a great candidate for a hint when the
window is added through the window manager. Thanks to this during first
view hierarchy measure or wallpaper window layout they are immediately
available and don't require multiple measure/layout passes.

Bug: 21593814
Change-Id: I573c15ffbbe4fcd8a6ed9c5e4fcd6cfbbcd7434f
allpaper/WallpaperService.java
24336555658377383a1b4a1a22b1f24346b5ff68 26-Jun-2015 Amith Yamasani <yamasani@google.com> Merge "Clarify the intention of setNotificationsShown" into mnc-dev
08a244cee8ff946233b0719540573c36249dc505 20-Jun-2015 Zach Johnson <zachoverflow@google.com> Update CarrierService long lived binding API

Should take a metadata approach instead of a separate
intent.

b/21080696

Change-Id: Ib6e2ec0d3258e419aa14ae9e598a8147505feb84
arrier/CarrierService.java
c6ecbce42b8a529447ff327a7902d9da0aeb4310 23-Jun-2015 Amith Yamasani <yamasani@google.com> Clarify the intention of setNotificationsShown

Updated javadoc with a bit more detail.

Bug: 21572672
Change-Id: I6b24e47fecd5142bb4bac979cb91f7a6359990d5
otification/NotificationListenerService.java
16036f26847f3f1a88a093fb776bf081008ff8d8 22-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #20654534: API Review: android.app.assist

Remove the old classes.

Change-Id: I949350cadc5fc304e2651d7db0ffd38e45db9b6e
oice/VoiceInteractionSession.java
7e786954e5821ad00335fae5d9c492c855631099 19-Jun-2015 Chris Wren <cwren@android.com> Merge "drop corrupt notifications in the Listener" into mnc-dev
0925136b22d4fcc69ed8b13675861e2386f3a341 18-Jun-2015 Stefan Kuhne <skuhne@google.com> Merge "Fixing voice panel centering issues in landscape on phone" into mnc-dev
2f280d06396d7b8234197a3b1a35d5319f7d6951 18-Jun-2015 Stefan Kuhne <skuhne@google.com> Fixing voice panel centering issues in landscape on phone

The new assist panel (long press on home) was not centered in landscape
mode on phones. This was caused by ignoring the stable insets in the
PhoneWindowManager.

bug: 21708971
Change-Id: I97a968a41c2966b09eba496fbe57c840affdf9ec
oice/VoiceInteractionSession.java
24fb8940b4844e6b121e05c5019361f31d1baf3c 18-Jun-2015 Chris Wren <cwren@android.com> drop corrupt notifications in the Listener

Bug: 21471255
Change-Id: I184507dfafa49b71b91406a1ae0131f930adbb77
otification/NotificationListenerService.java
b4c469095f12972ef04558961ddbdbdfe8305ccb 18-Jun-2015 Craig Lafayette <craiglafa@google.com> Merge "Remove FRP wipe support for device initializers" into mnc-dev
40359f73b189fc8547dd91e6b75a4243b23553ef 18-Jun-2015 Adam Powell <adamp@google.com> Merge "Request application of WindowInsets when setting a content view" into mnc-dev
41607d5a2b8cc4a3fde4a2f75e33a00e8d957b1d 17-Jun-2015 Adam Powell <adamp@google.com> Request application of WindowInsets when setting a content view

For both PhoneWindow and VoiceInteractionSession, call
requestApplyInsets when the content view(s) change. This is generally
what the developer expects if the new view tree responds to insets in
any way.

Bug 21620924

Change-Id: I60a88af55bf85217c3587aa37f03fdc3fdce686d
oice/VoiceInteractionSession.java
216f5c33472bf4014cb1951deeb2b7c09f4cae37 17-Jun-2015 Dianne Hackborn <hackbod@google.com> Bring back screenshot API.

Change-Id: Ia6bdfa300398d39119239f6a88c9992673edb3e0
oice/VoiceInteractionSession.java
09ad6bfe9619ff7a61209131f1f3182d53d840d0 02-Jun-2015 Craig Lafayette <craiglafa@google.com> Remove FRP wipe support for device initializers

- Remove ManagedProvisioning NFC parameter key from
DevicePolicyManager
- Remove wipeIfAllowed from PersistentDataBlockManager

Bug: 21558883
Change-Id: I59354b7bb1ef7e0b0346ff9a7d1654780231dff0
ersistentdata/IPersistentDataBlockService.aidl
ersistentdata/PersistentDataBlockManager.java
382225af479964a1677a76fe8d8f69d577ddb912 10-Jun-2015 Dan Sandler <dsandler@android.com> Merge "Null check when reconstituting legacy icon data." into mnc-dev
da9bbf725592c6482d6fbce18ef8c258b18e4fc8 10-Jun-2015 Andrew Flynn <flynn@google.com> Merge "notifyCarrierNetworkChange:TelephonyManager->CarrierService" into mnc-dev
ceaed68b074bd341ed9b5f13ff9cc69e3f533999 09-Jun-2015 Andrew Flynn <flynn@google.com> notifyCarrierNetworkChange:TelephonyManager->CarrierService

Re-checkin of 7f8be9d89b7f294bf5e5d377908a5c74d2f4968f.

ORIGINAL CHANGES:

Per API review, move TelephonyManager.notifyCarrierNetworkChange() to
CarrierService.notifyCarrierNetworkChange(). Underlying telephony
implementation remains unchanged.

Also minor tweaks to CarrierService:
* Remove some unnecessary @hide
* Remove final qualifier from onBind() so that subclasses can handle
new internal callers that want to bind to it.

ADDITIONAL CHANGES:

- Fixes stack so that a SecurityException is thrown when caller
does not have MODIFY_PHONE_STATE or carrier privileges.

Bug: 21572049
Bug: 21630803
Bug: 21721768

Change-Id: Ie952651d2f15c370de713ed8abb6d9f6f07dd2b4
arrier/CarrierService.java
99a37f137dd3ad15db1cc9b310591e1d50c601b5 09-Jun-2015 Dan Sandler <dsandler@android.com> Null check when reconstituting legacy icon data.

Bug: 21353798
Change-Id: I07f6c7310d4589128b175759f737cf902585f97e
otification/NotificationListenerService.java
5ea0c8f1c660630edcdd5abdac076f7df69a7f8a 08-Jun-2015 Jonathan Basseri <misterikkit@google.com> Rename reloadCarrierConfigForSubId -> notifyConfigChangedForSubId

Per discussion with API council, "notify" makes more sense than "reload"
here.

Bug: 21571894
Change-Id: I7e8e8d91d8e6e6d4502cf371472fd82efa3e97f5
arrier/CarrierService.java
21a4f17c942165684bc590de594984912459396d 08-Jun-2015 Andrew Flynn <flynn@google.com> Merge "Revert "notifyCarrierNetworkChange:TelephonyManager->CarrierService"" into mnc-dev
2b5348b41329b42f5b0929455a9b616a5e1f685e 08-Jun-2015 Andrew Flynn <flynn@google.com> Revert "notifyCarrierNetworkChange:TelephonyManager->CarrierService"

This reverts commit 7f8be9d89b7f294bf5e5d377908a5c74d2f4968f.

Change-Id: Ib99d2b8f83c2775cf5df4330a4f20bc791a83e5e
arrier/CarrierService.java
2429e6a8d96a4eba83e22c35595fa05e0f5e51f2 08-Jun-2015 Andrew Flynn <flynn@google.com> Merge "notifyCarrierNetworkChange:TelephonyManager->CarrierService" into mnc-dev
6cf397508eb7edef13baefad942a59b058ed450b 04-Jun-2015 James Cook <jamescook@google.com> Allow different visual and voice assist prompts

* Introduce VoiceInteractor.Prompt, holding multiple voice prompts
("What genre?", "What genre of music?", "What genre of music, for
example classical?") as well as a different visual prompt to show
on screen ("Choose genre").
* Migrate framework voice interactor code from a CharSequence prompt
to Prompt.

Bug: 21024958
Change-Id: Ib595fbdb2801cc558085e9b8366d619ff1d4d656
oice/VoiceInteractionSession.java
7f8be9d89b7f294bf5e5d377908a5c74d2f4968f 04-Jun-2015 Andrew Flynn <flynn@google.com> notifyCarrierNetworkChange:TelephonyManager->CarrierService

Per API review, move TelephonyManager.notifyCarrierNetworkChange() to
CarrierService.notifyCarrierNetworkChange(). Underlying telephony
implementation remains unchanged.

Also minor tweaks to CarrierService:
* Remove some unnecessary @hide
* Remove final qualifier from onBind() so that subclasses can handle
new internal callers that want to bind to it.

Bug: 21572049
Bug: 21630803
Change-Id: Idcbcd107966fe92d7edc23c261e11db61160f615
arrier/CarrierService.java
b0a5e78fc06aeb67ac1f55832c9ceef5f92a0807 04-Jun-2015 Dianne Hackborn <hackbod@google.com> Merge "More API changes." into mnc-dev
f270a8f3d653be4a6b8f665e8211db4f39507bb3 03-Jun-2015 Jonathan Basseri <misterikkit@google.com> Fix logic error in CarrierService.

CarrierService is supposed to filter intents in onBind and only accept
valid actions. The logic was off so that it rejected all bind attempts.

This was tricky to track down because clients get no clear signal that
onBind is returning null.

Bug: 21571360
Change-Id: Id82fce8dfa73a75fae1ce69f73b922addc7daa3e
arrier/CarrierService.java
c0e7a0416d8de2cb0c1d3715f4b7504edde29dff 03-Jun-2015 Jonathan Basseri <misterikkit@google.com> Fix logic error in CarrierService.

CarrierService is supposed to filter intents in onBind and only accept
valid actions. The logic was off so that it rejected all bind attempts.

This was tricky to track down because clients get no clear signal that
onBind is returning null.

Bug: 21571360
Change-Id: If37a52e30d0c7fd0205f23595f39be3d55db69d4
arrier/CarrierService.java
69c6adc96eecfde74ceb83cf9177428dc08b6067 02-Jun-2015 Dianne Hackborn <hackbod@google.com> More API changes.

Start moving Assist* stuff to android.app.assist.

Clean up some more of the VoiceInteractionSession APIs.

Clearly document that finish() is not the same as hide(),
always call hide() instead, and fix the finish() path to
also always do a hide to make sure everything is cleaned
up correctly.

Change-Id: I962d4069fcb34fe89547a95d395ae1b9fa3b4148
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionSession.java
7d01d2c6cfcdfad74735619ab95f8396be54dc0f 03-Jun-2015 Jorim Jaggi <jjaggi@google.com> Merge "Fix API review: Camera prewarm" into mnc-dev
d944986fbdb3d45fab9ae4120af76ca4f6b0909c 29-May-2015 Jorim Jaggi <jjaggi@google.com> Fix API review: Camera prewarm

Let the intent receiver of a camea launch intent declare a prewarm
service instead of sending broadcasts.

Bug: 21347653
Change-Id: I11e31aad4f788ad90eb46a661b819d3e808ddb51
edia/CameraPrewarmService.java
9ed0c4109df27c0956f97b7a074c0b67daa0ebd8 02-Jun-2015 Dianne Hackborn <hackbod@google.com> Merge "Update VoiceInteractionService from API review." into mnc-dev
2ee5c368f844bc0f6ce55ff6d5cf3d5604cad5d8 30-May-2015 Dianne Hackborn <hackbod@google.com> Update VoiceInteractionService from API review.

This may even manage to retain compatibility with existing
binaries! (For now.)

Change-Id: I3b1386287a6b9b20b57ac2e2444fd6f458837277
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
99bcc3eee23ed8bd15bd108d068d6f9f694e4393 01-Jun-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Revert "Revert "resolved conflicts for merge of 47249f2a to mnc-dev""" into mnc-dev
6a2999073ce4d4ac203e7e2d7b40aaaa794851d4 29-May-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Use account name instead of calendar id in event conditions." into mnc-dev
995a749f278b45a2931b2846a60a8231dfd755b4 29-May-2015 John Spurlock <jspurlock@google.com> Zen: Use account name instead of calendar id in event conditions.

- Migrate the existing calendar attribute in the event condition
from a long calendar id to the calendar account name. More
portable across a backup/restore.
- Also skip restoring transient state (like the current condition
state) from restored automatic rules.

Bug: 17755700
Change-Id: I9bdb421d2209e3ce90873008665c254d67c788d2
otification/ZenModeConfig.java
4573dddcce3f232d2eeb20bfe0e204e15a9416e9 28-May-2015 Dianne Hackborn <hackbod@google.com> Merge "Add new API to set URI on AssistContent." into mnc-dev
09d57fe9b357495b7bc62be39a8befa00d9d7ffb 28-May-2015 Dianne Hackborn <hackbod@google.com> Add new API to set URI on AssistContent.

Also rework how we transfer AssistContent and AssistStructure
to the assistant, so they are delivered as completely separate
objects rather than the kludgy bundling them in the assist
data thing.

Change-Id: Ib40cc3b152bafeb358fd3adec564a7dda3a0dd1d
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionSession.java
008232acbdc9b6988f498b619b686efd02e614ae 28-May-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Store notification zen policy per-user." into mnc-dev
21258a3703fe16b7c4754aec743215f3063bcdac 28-May-2015 John Spurlock <jspurlock@google.com> Zen: Store notification zen policy per-user.

- Keep a zen config per user in NoMan.
- Add zen config for all users to xml policy storage mechanism.
- Initialize config to default for new secondary users.
- Re-evaluate global zen on user switch.
- Remove some unused code in NoMan.
- Make ZenModeHelper aware of multiple users, keep all configs,
add to dump.
- Log config diffs in addition to the config itself in ZenLog.

Bug: 15845915
Change-Id: Ic847451e5d111c74916def1ea0948db5a76966c9
otification/ZenModeConfig.java
5c04bd767b23bb7f9faa0eeb9b9ab4c5525c6ea7 28-May-2015 Zach Johnson <zachoverflow@google.com> Update intents for CarrierService

Keep the bind intent and the config intent separate.

Change-Id: I645a7e697d49d46a4870b7b3a252b3214ee85412
arrier/CarrierService.java
2217f61e51ba4b19c56b19297c1e9cf74d7d860f 26-May-2015 Filip Gruszczynski <gruszczy@google.com> Revert "Revert "resolved conflicts for merge of 47249f2a to mnc-dev""

This includes the fix for the broken dialog windows. The outsets will
only be calculated and applied if the window is full screen, since
they don't make much sense otherwise.

This reverts commit 4bb6b751fbbb218e8a298db4aa008472a0aa8d31.

Change-Id: I977a85a78c990c1840784dc0be0dddd5a6d84e6b
allpaper/WallpaperService.java
42ecc9eb902ef90876cd345a906c24e0d58720a3 23-May-2015 Zach Johnson <zachoverflow@google.com> Drop the "Config". Just "CarrierService". It's cleaner.

b/21308727

Change-Id: I6515888c7804349ecd07c4dd74575ef89a4bea59
arrier/CarrierConfigService.java
arrier/CarrierService.java
arrier/ICarrierConfigService.aidl
arrier/ICarrierService.aidl
5ccfe51d8b9ae4f73a3b0fdb553b807cf5691582 27-May-2015 Andres Morales <anmorales@google.com> Merge "[LockSettings] migrate password attempt throttling to hardware" into mnc-dev
2397427cb1a0bad8a42e6a342dcf29b31e40a234 15-May-2015 Andres Morales <anmorales@google.com> [LockSettings] migrate password attempt throttling to hardware

leverage root protected, cryptographically secured hardware
if available

Bug: 21118563
Change-Id: Ifa804c5a0728bfd14466eb2a84051bace6d33d57
atekeeper/GateKeeperResponse.aidl
atekeeper/GateKeeperResponse.java
atekeeper/IGateKeeperService.aidl
12e0b390efd2fb8c21a2700be9dcd95d15b31ba6 26-May-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Calendar auto-rule tracks primary calendar for corp profile." into mnc-dev
1b8b22b1a412539020f78a132cff7c8fa7fae258 20-May-2015 John Spurlock <jspurlock@google.com> Zen: Calendar auto-rule tracks primary calendar for corp profile.

- Track the calendar provider for the managed profile user if found.
- Add userId to the shared data structure to disambig calendar ids.
- Delay rule update a bit to guard against chatty updates.
- Fix logging in calendar rule.

Bug: 21155107
Change-Id: Id2303fcc39b1fa7417b1844b7869d773ef92434c
otification/ZenModeConfig.java
fd9880987305c683c2572439244f0448ef6683b1 25-May-2015 Chet Haase <chet@google.com> Clarify example for Deep Share

Changed name of service to avoid using the actual class name
ChooserTargetService as the example service's name.

Issue #21418354 Clarify doc example for ChooserTargetService

Change-Id: I59bf67299fe7a8307504baf5e999c14f84a1e50d
hooser/ChooserTargetService.java
4bb6b751fbbb218e8a298db4aa008472a0aa8d31 23-May-2015 Dianne Hackborn <hackbod@google.com> Revert "resolved conflicts for merge of 47249f2a to mnc-dev"

This reverts commit c7becb7ee78881646251ff4846e63eb6b96bf7ec, reversing
changes made to 8562b08f04c1309cf40db1e749d612b6824f1d12.
allpaper/WallpaperService.java
c7becb7ee78881646251ff4846e63eb6b96bf7ec 21-May-2015 Filip Gruszczynski <gruszczy@google.com> resolved conflicts for merge of 47249f2a to mnc-dev

This is a merge of chin support.

Change-Id: I436b751b3c4aaa6b46cfcdb475e02eedfa5a5635
47249f2a9e49aa9626369517315eafc6b42fd8e9 21-May-2015 Filip Gruszczynski <gruszczy@google.com> am cb89ac84: Merge "Support for devices with a chin." into cw-d-mr1-dev

* commit 'cb89ac84c621e047d81873428325dfd747b90a6b':
Support for devices with a chin.
3e11bf33a6094da92d97702213aa12c67b21c4d1 20-Apr-2015 Filip Gruszczynski <gruszczy@google.com> Support for devices with a chin.

Information about the chin is now part of the config.xml instead of the
theme. It is retrieved by WindowManagerService and passed to the clients
as insets. Clients can adjust their behavior in a way that makes it
invisible to the user, that part of the surface doesn't actually exist.

Bug: 19908853

Change-Id: Iedf57bf3c848201b854f91ffeb3b59187d375c1f
allpaper/WallpaperService.java
f9a0d44d2e4f2d92a117074facee4f2632a4faf1 19-May-2015 Adam Powell <adamp@google.com> Merge "Migrate uses of config_windowIsRound to Configuration.isScreenRound" into mnc-dev
38a499edf5542fbd0948a02b77ecd84c0d62a846 19-May-2015 Dianne Hackborn <hackbod@google.com> Remove screenshot APIs.

Change-Id: I1efdb7945bd52f5f43c7103480be3d7dac60018b
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
01f280d376218c5a007fc29f70b876375ad24204 19-May-2015 Adam Powell <adamp@google.com> Migrate uses of config_windowIsRound to Configuration.isScreenRound

Move existing code that previously relied on config_windowIsRound to
use the new Configuration.isScreenRound() method. Also move the system
property override for emulators over to the initial setup of a Display
so that the configuration property is consistent with existing
expectations.

Remove config_windowIsRound from symbols.xml. The symbol now only
exists as a default value redirect for overlays already configured to
supply this value.

Change-Id: I24e6564030a6051c3ac7262868983b43e13eee65
allpaper/WallpaperService.java
8783d3fe761ab943ad73e7c58252806df9e401da 18-May-2015 Jose Lima <joselima@google.com> Make all icon fields & extras sent to listeners backward-compatible.

This also had to be done for when retrieving existing notifications.
For final release, we will only be doing this for
notification listeners targeting older SDKs.

Bug: 21207612
Change-Id: I351f9e13cd052410e7355c956c750c3859f972cb
otification/NotificationListenerService.java
f5a7838e19c1cb6437a8b32ba9980ac1ce8804e2 16-May-2015 Daniel Sandler <dsandler@android.com> Make all icon fields & extras sent to listeners backward-compatible.

For final release, we will only be doing this for
notification listeners targeting older SDKs.

Bug: 21207612
Change-Id: I28fdaa5666698150ab455f9bfb63251b9418519e
otification/NotificationListenerService.java
cdaaa91f7c67b2c56f17d5512f015c7c25c7c351 14-May-2015 Zach Johnson <zachoverflow@google.com> Create unified BIND_CARRIER_SERVICES permission

Replace BIND_CARRIER_MESSAGING_SERVICE and
BIND_CARRIER_CONFIG_SERVICE since we don't really
need one permission for each carrier service type.

Deprecate BIND_CARRIER_MESSAGING_SERVICE since it
already shipped, but remove BIND_CARRIER_CONFIG_SERVICE
since it hasn't.

b/21165906

Change-Id: I716f3f1c98a228afcfee84cf4a48911f0736ce8c
arrier/CarrierConfigService.java
arrier/CarrierMessagingService.java
fb13d497ae2a68444dad89a4c2e0a6fa19ad4bf2 13-May-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Use shorter version of countdown condition summary in footer." into mnc-dev
bbde26774fcf7ea65abd92d60f7468478c015053 13-May-2015 John Spurlock <jspurlock@google.com> Zen: Use shorter version of countdown condition summary in footer.

To try and keep to two-lines.

Bug: 21119801
Change-Id: I5a6760381a6b673b8481164f92cf6b7b236af349
otification/ZenModeConfig.java
4f9ad1678eca240afb5a2174dc35e4f0559312c3 12-May-2015 Jonathan Basseri <misterikkit@google.com> Switching to PersistableBundle in carrier config API.

Part of this API involves persisting config bundles to avoid binding to
apps at critical moments (like boot). Regular bundles should not be
written to disk because they support object types that can lose their
meaning while the data is at rest.

In order to use PersistableBundle, we must either start with one or
filter unwanted types out of Bundle objects. Since the carrier config
API has no use for unsupported types, we chose to use PersistableBundle
everywhere.

Bug: 20268926
Change-Id: I17989ce840014c2a0ed3679c1bca5a8498082c7f
arrier/CarrierConfigService.java
arrier/ICarrierConfigService.aidl
13036beab1579fabe1a93e1839c13cb68a49adf6 12-May-2015 Adam Powell <adamp@google.com> Apply API feedback for ChooserTarget

* Add better docs to ChooserTarget
* Change ChooserTarget to use android.graphics.drawable.Icon instead
of Bitmap
* Preserve EXTRA_REFERRER when starting ChooserTargets

Bug 21045119

Change-Id: If859b86344cebaed3eaae477af132e7d7600aba6
hooser/ChooserTarget.java
hooser/ChooserTargetService.java
7d7580019e44e2e162df01ffff51de20ed0721b3 07-May-2015 Adam Powell <adamp@google.com> Bringing new Chooser UI closer to spec

Separate the chooser targets into rows by type. Remove some API that
was redundant with LabeledIntent, simplifying ChooserTarget.

Change-Id: I90de471825f05d85e6ffbe72a32fb597be824a30
hooser/ChooserTarget.java
4755cb3e5d8012b5554369d0df25ba8634267aa2 09-May-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Tweak default automatic rules." into mnc-dev
cb9aa20bddbeebc3a052e40ca3b7d0a511fa8358 08-May-2015 John Spurlock <jspurlock@google.com> Zen: Tweak default automatic rules.

- Add a new default rule for calendar events.
- Rename all default rules to singular form. i.e. Weekend/Weeknight/Event

Bug: 20064962
Change-Id: Iee13238e0479fd2a05abdef4a5584455dcdd0c53
otification/ZenModeConfig.java
807749301fcbda892dfc8a5832b19acf7d1cf53b 07-May-2015 John Spurlock <jspurlock@google.com> Zen: Simplify notification policy api, add zenmode api.

- Remove the concept of a notification policy management token
in favor of a simple grant/deny per app. Currently, all requests
are immediately granted.
- Add zen mode getter/setting, limit to apps that have been granted
policy access.
- Add intent for zen mode changes.
- Public name for zen mode = "interruption filter", moved from
NotificationListenerService to NotificationManager.
- Add settings metadata for new DND access Settings screen.
- Add the split sender settings for calls vs messages to the public
Policy api.
- This change is meant to finalize the public api, persisting
granted app status and showing the user-visible dialog will be
done as followups.

Bug: 18298798
Change-Id: I511be98d69939f057c0c7dc1a6dfe63d1c468193
otification/NotificationListenerService.java
otification/ZenModeConfig.java
6711f3b34c2ad9c622f56a08b81e313795fe7647 07-May-2015 Adam Powell <adamp@google.com> Move PhoneWindow and friends back into internal package

PhoneWindow, PhoneLayoutInflater and PhoneFallbackEventHandler decided
to @hide out over in the android.view package after the policy jar was
disbanded. Give them a more appropriate home over in framework that
doesn't imply that they should be accessed from other internal layers
of abstraction.

Bug 19606548

Change-Id: Id07b791d178fa447010b49b24726b52208838e88
reams/DreamService.java
bc1a2ad8785415d1a4f86b3e477ff16e2e68f795 06-May-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Maintain source filters for both calls and messages." into mnc-dev
6329bbceebc8c0d6de164cb693a828402542fd35 06-May-2015 Selim Cinek <cinek@google.com> Merge "The voice assist may now be launched above the lockscreen" into mnc-dev
a492d1d88c3fd2bdddb046bc4278553a776bb8bf 06-May-2015 John Spurlock <jspurlock@google.com> Zen: Maintain source filters for both calls and messages.

Bug: 18635172
Change-Id: Ifeb56f1c8d8a30c4966c628edf7512199f3edb22
otification/ZenModeConfig.java
e70d6535237d2e6f03adcd0bdc11e45ea714dc97 25-Apr-2015 Selim Cinek <cinek@google.com> The voice assist may now be launched above the lockscreen

A possibility was introduced to launch voice assist over
the lockscreen using the left keyguard affordance.

Change-Id: Ic4618d24256b65441a50d77d0ef59b0ec99b6ead
oice/IVoiceInteractionService.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionServiceInfo.java
0bc8afff7eb3b5af72b7e9a4ce3954488bfbecd0 05-May-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Remove calendar rule attendance attribute." into mnc-dev
d39af2d3f8c5d87e102aeb79d4148218ff616245 05-May-2015 John Spurlock <jspurlock@google.com> Zen: Remove calendar rule attendance attribute.

- No longer supporting a filter based on attendance type.
- Remove from model + condition provider logic.

Bug: 20064962
Change-Id: I0bc16275a2860ab95d4de316b6326a1499003f05
otification/ZenModeConfig.java
d1808401ca3bfd6b6b9a975c1e739b194d18f849 05-May-2015 Prerepa Viswanadham <dham@google.com> Merge changes from topic 'mwd-merge-050415' into mnc-dev

* changes:
Merge commit 'b6f59f4' into master_merge
Merge commit 'f6db0ce' into master_merge
Merge commit '17455a3' into master_merge
Merge commit 'b4d5b32' into master_merge
Merge commit 'a1a2fa7' into master_merge
Merge commit '8dfdb98' into master_merge
Merge commit 'eba66c3' into master_merge
5f560d056243638a83a4e7770035fdb66004c9d7 30-Apr-2015 Jorim Jaggi <jjaggi@google.com> Rename supportsAssistGesture to supportsAssist

Bug: 20642759
Change-Id: Idddc786980244cc94570d04fd414540bbad60448
oice/VoiceInteractionServiceInfo.java
b6f9da0b7f26b50163461a767cafcd8014328742 01-May-2015 Prerepa Viswanadham <dham@google.com> Merge commit '17455a3' into master_merge
d60258f2d33214077a22c1a682944fa9e47c0461 30-Apr-2015 John Spurlock <jspurlock@google.com> Zen: New event condition data model.

- Add system condition provider for calendar event-based rules.
- Add stub condition provider for handling event conditions.
- Add various shared items to support new settings subpage.

Bug: 20064962
Change-Id: I6f5afe0f1444976f0dc6807048e0580e8a28070e
otification/ZenModeConfig.java
d9c75dba75ad4742dbaadc34db99d2b76cebca91 28-Apr-2015 John Spurlock <jspurlock@google.com> Volume: Simple dialog footer, DND in quick settings.

- Show DND tile by default, this is now the only
place to manage DND modes / end conditions.
- Remove super footer from volume dialog, replace with
a simplified version that displays the current mode
and allows ending DND.
- Remove obsolete text-only footer from codebase.
- Migrate remaining volume items into main resource files.
- Rename "No interruptions" to "Total silence".
- Add new user information banner for "Total silence"
- Crude media filtering for Total Silence.
(deeper muting changes will be done as a followup)
- Disable volume dialog sliders completely if muted due
to zen.
- Cleanup ZenModePanel: assume embedded mode, remove
expandable subhead
- Remember "favorite" DND mode inside the DND config panel.
- AudioService: consult ringer-mode-delegate before voluming
down into silent.
- Add new hour options to time-based exit conditions.
- Volume dialog visual updates to move closer to final visuals.
- Unify ringer=silent with DND.

Bug: 19260237
Change-Id: I05d7e001eca3b5125418ec3bc4087d0cb8866717
otification/ZenModeConfig.java
f47e51ec605fccf7fed9e50d1adc98fbd4e8b340 17-Apr-2015 Amith Yamasani <yamasani@google.com> More usage tracking

Notification listeners can now report that a notification
has been seen by the user and that package is then marked
as active.

Bug: 20066058
Change-Id: I336040a52c44c21fd0d78b02ec9a19d448c64b40
otification/NotificationListenerService.java
e87e4f077c8f5dc8dc7b1b5cd68cbe8ca51f2396 16-Apr-2015 Cheuksan Wang <edwang@google.com> add a parameter to carrier messaging calls to request delivery status

In the carrier messaging API, I forgot to add the parameter to request
delivery status. We need to add one more parameter (to indicate
requesting delivery status) to these calls:

onSendMultipartTextSms
onSendTextSms
onSendDataSms

Backward compatibility is maintained in
CarrierMessagingService.java. Third-party carrier apps implementing
the old API will continue to work.

BUG: 20224743
Change-Id: I09901558e7cb75a9ec6a5bd5ba2c8117ac471932
arrier/CarrierMessagingService.java
arrier/ICarrierMessagingService.aidl
c6d5e3a406c0e80638304980bac13abaa703a9a0 23-Apr-2015 Adam Powell <adamp@google.com> Fixes for ChooserTargetActivity

* Always ensure intent filter is supplied to a ChooserTargetService.
* Add and clarify docs for ChooserTarget constructors.
* Fix a bug where ChooserTargets were being parceled incorrectly.

Change-Id: I32b70c424b0e6bb317e2eeb810566a30c21b9d53
hooser/ChooserTarget.java
e57818a20e1d21ce705577b670b93d54d2e3a5d3 17-Apr-2015 Adrian Roos <roosa@google.com> Merge "Allow dismissing Keyguard from TrustAgentService"
54ce1cafb00992dfb68c21fef0632eca05cfa87d 17-Apr-2015 Filip Gruszczynski <gruszczy@google.com> am cba75f31: am 47e743b9: am 4544b927: Hold a wake lock while dozing when wallpaper draws.

* commit 'cba75f315967bba103805046b122e9a58687b85d':
Hold a wake lock while dozing when wallpaper draws.
94e15a59b757678949cccb5d783bee1638e84697 16-Apr-2015 Adrian Roos <roosa@google.com> Allow dismissing Keyguard from TrustAgentService

Bug: 19900313
Change-Id: I44d13ee6fe65070327076e73a3ed96c94acdc108
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
47e743b9e276d89ded2b9c50af61db2ce5529706 17-Apr-2015 Filip Gruszczynski <gruszczy@google.com> am 4544b927: Hold a wake lock while dozing when wallpaper draws.

* commit '4544b927d7f3575bf609490b42d521a12bf95a07':
Hold a wake lock while dozing when wallpaper draws.
cfb61601fa4e92445655de7b82d2bc0ea9000824 17-Apr-2015 Andres Morales <anmorales@google.com> Clear secure user ID and notify keystore when lock is cleared

Change-Id: Id5bbde81b83add09e8362d439b19f1febe451003
atekeeper/IGateKeeperService.aidl
4544b927d7f3575bf609490b42d521a12bf95a07 16-Apr-2015 Filip Gruszczynski <gruszczy@google.com> Hold a wake lock while dozing when wallpaper draws.

This mimics what ViewRootImpl does before drawing.

Bug: 20242788
Change-Id: If85ad17113636f74267aedb3af04d0281b57ac0e
allpaper/WallpaperService.java
f1f6aad891aa510246bd212fd03cd744d84b369b 16-Apr-2015 Andres Morales <anmorales@google.com> Merge "Expose SID API"
ca38add3ea7ac7e28bd915a52a861261a944f2bd 16-Apr-2015 Andres Morales <anmorales@google.com> Expose SID API

Change-Id: Ic8b56529353f759f58f687a7cb1b4655ffee8b6d
atekeeper/IGateKeeperService.aidl
9a1c9b67c4b2426884deb60c1ff84130ab47333c 25-Feb-2015 Jonathan Basseri <misterikkit@google.com> Adding Carrier Config API.

UICC privileged carrier apps will extend CarrierConfigService to provide
carrier-specific configuration. Apps/services will use
CarrierConfigManager to read the current configuration.

CarrierConfigManager also defines the set of configuration variables and
their default values.

Bug: b/19483786
Change-Id: I027211b43276afd6fe893ae50048c52f2aed5cf5
arrier/CarrierConfigService.java
arrier/CarrierIdentifier.aidl
arrier/CarrierIdentifier.java
arrier/ICarrierConfigService.aidl
3031bf961103ecc1caa32449a3cdb95575042278 25-Feb-2015 Jonathan Basseri <misterikkit@google.com> Adding Carrier Config API.

UICC privileged carrier apps will extend CarrierConfigService to provide
carrier-specific configuration. Apps/services will use
CarrierConfigManager to read the current configuration.

CarrierConfigManager also defines the set of configuration variables and
their default values.

Bug: b/19483786
Change-Id: I027211b43276afd6fe893ae50048c52f2aed5cf5
arrier/CarrierConfigService.java
arrier/CarrierIdentifier.aidl
arrier/CarrierIdentifier.java
arrier/ICarrierConfigService.aidl
1fc476d51203c0b76ebd0f2062adf3059437b0dc 14-Apr-2015 John Spurlock <jspurlock@google.com> Zen: Add notification policy management api.

- Allow apps to read and modify notification policy (currently
which items are prioritized in "priority only" mode), but only
after they've been granted access by noman.
- Access to read/modify notification policy requires a token provided
by noman. Enabled notification listeners are automatically given
tokens (new getter on NLS), but any other app can also request them.
- Currently, all requests are granted.
- Also add a new change intent when the public policy changes.

Bug: 18541928
Change-Id: I482d1c39852d0d961931515e0f0e059a8faee4ed
otification/NotificationListenerService.java
otification/ZenModeConfig.java
ca25b8768d1946dbdc3b84fe54b7c4b2888529de 14-Apr-2015 Dianne Hackborn <hackbod@google.com> Merge "Fixes to idle alarm scheduling, package importance."
1e38382b542f5cef9957a89692b02c55a3dd351c 10-Apr-2015 Dianne Hackborn <hackbod@google.com> Fixes to idle alarm scheduling, package importance.

- Add new API to ask the activity manager what the current
importance of a particular package name is (along with a few
new useful importance levels).

- Fix my last alarm manager change to actually execute the
alarms we have now decided should run even while we are idle.

Change-Id: I1f14712b4e390770d53b185c96a1b36f6aadd687
oice/VoiceInteractionSession.java
oice/VoiceInteractionSessionService.java
d9fc85ac27742adbe89e54fd35f3cb2469e94b91 10-Apr-2015 Andres Morales <anmorales@google.com> Add challenge to IGateKeeperService

required for enrolling secondary auth form-factors

Change-Id: Id5a1eb1ed22f01fbaabe8e4ebddfc42d58322625
atekeeper/IGateKeeperService.aidl
8fa5665f0e757cec0063fb4cf1354f1596f93a91 31-Mar-2015 Andres Morales <anmorales@google.com> Wire up GateKeeper to LockSettingsService

Adds:
- Communication to GKService
- password upgrade flow
- enroll takes previous credential

Change-Id: I0161b64642be3d0e34ff4a9e6e3ca8569f2d7c0a
atekeeper/IGateKeeperService.aidl
2442841819f9554f9b5c8b9c147a51b04e50de4d 02-Apr-2015 Adam Powell <adamp@google.com> Implement ChooserTargetService querying for ChooserActivity

First cut at querying services provided by apps that offer
ChooserTargetServices. This first implementation provides no ranking.

Bind to a limit of 5 ChooserTargetServices and offer the
ChooserTargets they provide as options in the system
ChooserActivity. The chooser now presents targets as a grid and
displays the activity icon from the referrer activity.

Change-Id: I45db829f184fc78d4f18d42b2a60b25bc301eba8
hooser/ChooserTarget.java
hooser/ChooserTargetService.java
cbcf902a4afbb449ae6ba3738d32d3ca1c5c4602 14-Apr-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Support external condition providers."
6a975b3c3597a4ad9202432f3c3d867a03d43fa4 10-Apr-2015 Tim Kilbourn <tkilbourn@google.com> Save search context when dispatching onSearchRequested.

The InputDevice used to trigger the search is saved in a SearchEvent
so an application implementing onSearchRequested determine the device
triggering the search.

Bug: 15374820
Change-Id: If2cd14f77ce572a5ee131697cd63145fbea63f27
reams/DreamService.java
39581cc16d3c44acc8f0881d8e63afe53acaa1c1 10-Apr-2015 John Spurlock <jspurlock@google.com> Zen: Support external condition providers.

- Manage provider subscriptions for external condition providers
within ZenModeConditions.
- Move "is automatic rule active" check into common location.
- Add constant for external rule setting configuration page.
- Consolidate log tags.
- Reset rule snoozing on boot.

Bug: 20064962
Change-Id: Ida207dbf363f61e1727974e611f43f27c23accfb
otification/ZenModeConfig.java
2a91bbfb4d19c7262abc063b3c0c0349059311d5 10-Apr-2015 Craig Lafayette <craiglafa@google.com> Merge "Reset protection in PersistentDataBlockManager"
66445a639dc134d09393f5069b7683ec36d4cd07 27-Mar-2015 Craig Lafayette <craiglafa@google.com> Reset protection in PersistentDataBlockManager

Add method to allow authorized data block wipe in support of factory
reset protection. This will allow ManagedProvisioning to respond to
and pass factory reset protection challenges during automated device
setup.
- Adds the wipeIfAllowed method to clear the data block
- Creates a protected-broadcast to send to allowed package

Bug: 19792435
Change-Id: I897f2ea2afb1222a1fc8ac49290ee45ea4d3f2d7
ersistentdata/IPersistentDataBlockService.aidl
ersistentdata/PersistentDataBlockManager.java
1d7d2248ec1f8d8f752bf002b503e3b81042a398 10-Apr-2015 John Spurlock <jspurlock@google.com> Zen: New option to allow repeat callers.

Bug: 20064962
Change-Id: I11a5519c02bf8fa8e332559092c865c5e612fbd2
otification/ZenModeConfig.java
b2278d65714c0dd0a6f94d1913db1ebc8bfc8b06 07-Apr-2015 John Spurlock <jspurlock@google.com> An update on Downtime.

The update is that Downtime is obsolete. Replaced by the
ability to define multiple named schedule calendars.

- Make changes to ZenModeConfig to properly model manual
and automatic rules.
- Refactor the zen mode helper (and supporting classes) to
properly handle / report multiple claims on zen mode.
The "manual" rule (specified by the user in the UI) vs
one or more automatic rules.
- Automatic rules are still backed by condition providers,
but the layering is now cleaner. ConditionProviders is now
completely generic, has no ties to zen mode.
- Specifically, the new layering for zen mode (below noman) is:
ZenModeHelper: Source of truth for zen state
ZenModeFiltering: Subhelper dedicated to filtering rules.
ZenModeConditions: Subhelper dedicated to managing automatic rules.
ConditionProviders: Underlying engine for reporting named boolean state.
- Migration story for users with existing downtime config, migrated
to a single new calendar named downtime.
- For users with no existing downtime, two default calendars are created
for weeknights + weekends (icu4j for all locales will be done in a followup).
- Remove obsolete DowntimeConditionProvider/NextAlarmConditionProvider and tracking.
- Clean up obsolete resources.
- Add common zen summary description string computation.
- Add proper noman wrappers for the new model.
- Change the semantics of the global zen setting. It is now read-only. Setters
must call noman, added a "reason" to all calls for better attribution.
- Update zenmodepanel + volumedialog to the new model.
- Display the one or more automatic rules in the new zen footer summary.
- "Snooze" the automatic rules when the user explicitly turns zen off.

Bug: 20064962
Change-Id: Idd9deb865a6035ad0cfae660198dccb517e6d7cc
otification/ZenModeConfig.java
d59a5d59df920d743723521a2afed9de1da3373b 04-Apr-2015 Dianne Hackborn <hackbod@google.com> Various fixes and improvements...

Issue #19912529: VI: VoiceInteractor callback ClassCastException

Fix to use correct argument.

Issue #19912636: VI: Documentation for VoiceInteractionSession.onBackPressed

Added documentation.

Issue #19912703: VI: VoiceInteractionSession NPE on Abort Request

Maybe fix this -- don't crash if there is no active session.

Issue #19953731: VI: Add value index to...
...android.app.VoiceInteractor.PickOptionRequest.Option

There is now an optional index integer that can be associated with
every Option object.

Issue #19912635: VI: Behavior of startActivity when in voice...
...interaction is unexpected

We now forcibly finish the current voice interaction task whenever
another activity takes focus from it.

Issue #20066569: Add API to request heap dumps

New ActivityManager API to set the pss limit to generate heap
dumps.

Also added app ops for assist receiving structure and screenshot
data, so that we can track when it does these things.

Change-Id: I688d4ff8f0bd0b8b9e3390a32375b4bb7875c1a1
oice/VoiceInteractionSession.java
689dd8fb5bbc07720cf1777133505784a1b53a10 03-Apr-2015 John Spurlock <jspurlock@google.com> Merge "Zen: Changes to support new priority settings."
fc746f8ac5ea74747a502d4a75161a46f9cb892d 03-Apr-2015 John Spurlock <jspurlock@google.com> Zen: Changes to support new priority settings.

Bug: 20064962
Change-Id: Iac3444c0a55830d5e5459e26c2172d974db600d6
otification/ZenModeConfig.java
64e71cd6cce5c65548a570204f6cc8641ef1eddb 03-Apr-2015 Jorim Jaggi <jjaggi@google.com> Merge changes from topic 'assist'

* changes:
Add test assist to implement motion study
Implement new assist gesture and motion
Add flag to voice interactor for supporting assist gesture
Add more internal API's for assist
Add ability to start voice interaction session directly
0b68ff45125e449dd0b4120f530240093aa6253e 02-Apr-2015 Jorim Jaggi <jjaggi@google.com> Add flag to voice interactor for supporting assist gesture

Add an additional flag to the voice-interaction-service declaration
so it can indicate whether it is able to handle the assist gesture.
Use that information in SystemUI so it only starts the voice
interaction session if the service is able to support it.

Change-Id: I62b035ce4f4cf06ee6e7eb0ddc4bf5edbc0e6737
oice/VoiceInteractionService.java
oice/VoiceInteractionServiceInfo.java
225d3b5449d29b43e619d8538d024305f6e81ba9 01-Apr-2015 Jorim Jaggi <jjaggi@google.com> Add more internal API's for assist

- When starting a voice interaction session from SysUI, a callback
can be passed to know when voice interaction has successfully started
- Add a new window type for the voice interaction starting window,
which resides behind the voice interaction layer.
- SystemUI now also inspects the voice interaction service to get the
logo asset for the starting window.
- Make VoiceInteractionSession window fullscreen, to accomodate for
the visuals.

Change-Id: If8c3c445e8b39841f48e8d153e6d1ba81e447286
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionSession.java
25e12abc5b8a4aa83cfa150094fd145b777e6e03 02-Apr-2015 Jorim Jaggi <jjaggi@google.com> Add ability to start voice interaction session directly

Add internal API's for SystemUI to start a voice interaction session
directly, without using an intent.

Make the assist gesture use that ability, if available.

Change-Id: I88ce3c7514714eb45666884847193585a07417a9
oice/VoiceInteractionService.java
12611bdf6d96986aed386e7d1f834361a0ff7383 03-Apr-2015 Dianne Hackborn <hackbod@google.com> Merge "Add quick and dirty async AssistStructure building."
4f1163c83e79da52b2be7ff6b10163441895bc26 02-Apr-2015 John Spurlock <jspurlock@google.com> Zen: Add a new level: alarms-only.

Like no-interruptions, but allows alarms.

Bug: 19260237
Change-Id: I36bf0a333362256c8e54cd83992cb46c3bcb7f69
otification/NotificationListenerService.java
5688b03f7f4fafd671451ff73103be0f2388b32e 03-Apr-2015 Dianne Hackborn <hackbod@google.com> Add quick and dirty async AssistStructure building.

New APIs on ViewAssistStructure all the app to request to
build a sub-tree asynchronously and indicate when it is done
with that. The overall AssistStructure is now only flattened
and transfered on-demand, when the app receiving it requests
its data -- and at that point we can wait for any asynchronous
building to complete.

New AsyncStructure view is a very simple example of using this
to asynchronously build a child view.

Change-Id: I14f9199bee64915ad3dc80b2190916ec874308af
oice/VoiceInteractionSession.java
ebbf205bc6e8292f74d8fc4652c70274a445f907 01-Apr-2015 Jim Miller <jaggies@google.com> Prepare to make Fingerprint API public.

- move fingerprint support files into hardware area
- move jni into services/core

Change-Id: I48a8e43d6d328fb66d79919c255e4c44e984b4d1
ingerprint/Fingerprint.aidl
ingerprint/Fingerprint.java
ingerprint/FingerprintManager.java
ingerprint/FingerprintUtils.java
ingerprint/IFingerprintService.aidl
ingerprint/IFingerprintServiceReceiver.aidl
2d3455993e857b0da029abe9ce8dd88801319d07 28-Mar-2015 Andreas Gampe <agampe@google.com> am 1bca3532: am 0e6b4da5: am 5a15bf69: Merge "Frameworks/base: Fix request removal in VoiceInteractionSession"

* commit '1bca3532687675d81dea805b12577a6c3a00b4c3':
Frameworks/base: Fix request removal in VoiceInteractionSession
0e6b4da5ca53d338f351827f7a351edcd6281aaa 28-Mar-2015 Andreas Gampe <agampe@google.com> am 5a15bf69: Merge "Frameworks/base: Fix request removal in VoiceInteractionSession"

* commit '5a15bf69d8d2782d70c462f7fd8bd75e687260dc':
Frameworks/base: Fix request removal in VoiceInteractionSession
1c6bfd69442e91458bb5c10490d0cff579f47e06 26-Mar-2015 Filip Gruszczynski <gruszczy@google.com> am 70ef3af8: am 2493d947: am 9001f14b: Merge "Don\'t use windowOutsetBottom for insets, depend on display padding only." into lmp-mr1-modular-dev

* commit '70ef3af8d953091e3595de63a9a2f68a064c2352':
Don't use windowOutsetBottom for insets, depend on display padding only.
63c8c4937e2b170eb018a3772789b7466cc51bbc 25-Mar-2015 Jim Miller <jaggies@google.com> Fix the build

Change-Id: I15cc8d517a1713b003aad396aa5d2b29cb808338
ingerprint/FingerprintManager.java
9fc9ac5f774450af80c05ea70847fcf4f4570db8 25-Mar-2015 Jim Miller <jaggies@google.com> Merge "Refactor fingerprint API"
9f0753f5a378fc80da86305b33244acc6fc53f01 24-Mar-2015 Jim Miller <jaggies@google.com> Refactor fingerprint API

- enroll() and authenticate() now take an explicit callback object.
- better handling of strings
- use framework resources for commonn error strings
- add vendor-specific arrays to resources

Bug 16487912

Change-Id: Idf34242fdd06bba1903cdb22bf20169d15d92b82
ingerprint/Fingerprint.aidl
ingerprint/Fingerprint.java
ingerprint/FingerprintManager.java
ingerprint/FingerprintManagerReceiver.java
ingerprint/FingerprintUtils.java
ingerprint/IFingerprintService.aidl
ingerprint/IFingerprintServiceReceiver.aidl
daf5c0ebd0aa4f73fcf2c9fecd8ce9d36e3db4fc 24-Mar-2015 Griff Hazen <griff@google.com> Merge commit '583c7c56' into master

Change-Id: I89c2c63005fbb6b1c058b2022f4469be5244505f
d66ba06a8727fa27d1f4bcb867be17b5f576384c 23-Mar-2015 Filip Gruszczynski <gruszczy@google.com> Don't use windowOutsetBottom for insets, depend on display padding only.

I am not sure if this is the correct approach to the problem. Right now
we are reporting double chin (60 vs 30). The reason for this is that
we setDisplayPadding from Clockwork Home activity (bottom=30) and add
windowOutsetBottom.

We use display padding to set surface frame size (320x320) and both
outset bottom and display padding for inset. I think we should use only
one of these. I decided to go with display padding, because that's
what was suggested to me the last time I visited this. I removed
the dependency on windowOutsetBottom altogether.

However, I don't feel confident this is the correct way to do this.
We depend on Home activity to send the display padding now to get
the correct result, so wallpapers behind other activities will not
work correctly.

Maybe instead of setting display padding from the outside, the
windowOutsetBottom should be added to display padding bottom for the
purpose of calculating surface frame and generating insets.

Advice on what is the right approach here would be greatly appreciated.

Bug: 19881056
Change-Id: Ifb655528d8f85ef01d942bf1e64e8b08475689ca
allpaper/WallpaperService.java
8ef92bd311e6faf602c9705db663abd451590fff 18-Mar-2015 Andreas Gampe <agampe@google.com> Frameworks/base: Fix request removal in VoiceInteractionSession

Fix and simplify removeRequest.

Bug: 19797138
Change-Id: I0eca877e3109c9f39cebd4c888f166ce334fcc0e
oice/VoiceInteractionSession.java
27eac1d58fe0b7ca3a2e27f5ed64eff232745f45 17-Mar-2015 Dianne Hackborn <hackbod@google.com> Add ability to get a screenshot for assist.

New flag you pass in to startSession() to say you want it,
new callback on VoiceInteractionSession to receive it.

Change-Id: I61fdcfdee41a60d46036a2ef16681a9b4181115a
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
3d07c94c393831091958fe6a98811843db8973bd 14-Mar-2015 Dianne Hackborn <hackbod@google.com> Add new voice request for picking from a list.

Also add API for voice interaction service to control
whether the system should hold a wake lock while it is
working with an activity (and actually *do* hold a wake
lock while doing so, duh!).

And while in there, clean up the launching wake lock to
correctly give blame to the app that is launching.

Change-Id: I7cc4d566b80f59fe0a9ac51ae9bbb7188a01f433
oice/VoiceInteractionSession.java
a0938021718867edd267d4905f3c17ef2944aa65 13-Mar-2015 Griff Hazen <griff@google.com> Allow emulator to select a window outset bottom

And clean up some copied around code.

Bug: 17440607

Change-Id: I5cf9c58b49110c4be1a77dc9c410fedc6b99aef3
allpaper/WallpaperService.java
4423d91de5300d3fd318bf5bc2d4d7e5bb856abf 02-Mar-2015 Clara Bayarri <clarabayarri@google.com> Add a type parameter to startActionMode() calls.

This requires adding a new method to View and Window.Callback to pass
down the type as a parameter.

For compatibility purposes, the new method implementations keep the
type and call the old method, in case clients have subclassed it.

Change-Id: If5d857f131e33be8cc6a8814f2e9c4e85ad2da25
reams/DreamService.java
216ce5d7b2b0c10305c8e109d5b5197c67cd76ab 12-Mar-2015 Jim Miller <jaggies@google.com> Merge "Add rename support to FingerprintManager"
99d6019bead4705b7e126e65b856d538417d4934 12-Mar-2015 Jim Miller <jaggies@google.com> Add rename support to FingerprintManager

Bug 19592835

Change-Id: I656b3932caf2cfdb9a330522d171a59af2c7a2d1
ingerprint/FingerprintManager.java
ingerprint/IFingerprintService.aidl
bd5e03b6d996aa39a6f607a55ffd0691a55b1cee 11-Mar-2015 Adrian Roos <roosa@google.com> Merge "Notify TrustAgentService when device policy configuration no longer applies"
a43fd03b9b23f9ad0deae9ee69ee80aaa1433cdb 09-Mar-2015 Adrian Roos <roosa@google.com> Notify TrustAgentService when device policy configuration no longer applies

Also updates the outdated javadoc to match the current API.

Bug: 19500731
Change-Id: I7976bbcc815b84e168718672377a963ffea68c51
rust/TrustAgentService.java
e30c9af3566cfa14796144b352230709c7b5647d 28-Feb-2015 Adam Powell <adamp@google.com> Add ChooserTargetService API

A ChooserTargetService can be implemented by apps that wish to offer
additional deep-link targets for the system intent chooser to in turn
offer to the user. This allows apps to create contextually relevant
shortcuts for UI flows that would otherwise require several steps of
explicit disambiguation. For example, a chat app might offer one-touch
access to recent conversations when sharing a photo to it from
elsewhere.

The chooser implementation must limit the number of
ChooserTargetServices it elects to query in order to respect available
system resources. Only the system chooser is permitted to bind to a
ChooserTargetService.

Change-Id: Ia7e075ee649c51cf2035f20aee166c5a27d91aeb
hooser/ChooserTarget.aidl
hooser/ChooserTarget.java
hooser/ChooserTargetService.java
hooser/IChooserTargetResult.aidl
hooser/IChooserTargetService.aidl
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac 28-Feb-2015 John Spurlock <jspurlock@google.com> Remove unused imports in frameworks/base.

Change-Id: I031443de83f93eb57a98863001826671b18f3b17
arrier/CarrierMessagingService.java
ingerprint/FingerprintManager.java
estrictions/RestrictionsReceiver.java
rust/TrustAgentService.java
allpaper/WallpaperService.java
ba67aee02cf864793129976cd8a8a46e60c60577 21-Feb-2015 Jim Miller <jaggies@google.com> Add fingerprint settings support to the framework

- cleanup thread issue and simplify native FingerprintService methods
- add new permissions and enforce them
- add fingerprint hardware detection API

Change-Id: I87c2243ea2412061f1e85b044138480d0161bcdf
ingerprint/FingerprintManager.java
ingerprint/FingerprintUtils.java
ingerprint/IFingerprintService.aidl
ffeecb1bfb9b71f4b62c9ef1fbf7b58a7a63f655 25-Feb-2015 Dianne Hackborn <hackbod@google.com> Rework voice interaction session lifecycle.

We now have a formal concept of the session being shown and
hidden, with it being able to continue running while hidden
as long as there is enough RAM.

This changes the flow that a VoiceInteractionSession will
see: onCreate() is when it is first created, onCreateContentView()
is when its UI first needs to be built, onShow() is called each
time it needs to be shown and has the arguments given when the
show request was made (which has been renamed from startSession to
showSession), and then onHide() will be called when the UI is
no longer shown.

The methods show() and hide() now allow a VoiceInteractionSession
subclass to control when it is shown and hidden, working with the
shown state being maintained by the system.

Change-Id: Ic4a430ec7e8bf76a5441fd0425e2932806170fcc
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
7b9c912f536925ac6ec43935d6e97506851b33d6 31-May-2013 Tor Norbye <tnorbye@google.com> Add @ResourceInt annotations on APIs

Change-Id: I119cc059c2f8bd98fd585fc84ac2b1b7d5892a08
reams/DreamService.java
682c8e509b494b8cd221d65df8f5e1f10e5f7bf1 13-Feb-2015 Dianne Hackborn <hackbod@google.com> Merge "Update voice interaction layer for new UI design."
ae6688b09649447e57468b3e7935691bc09ec9b9 12-Feb-2015 Dianne Hackborn <hackbod@google.com> Update voice interaction layer for new UI design.

Can switch from a pure overlay at the top of the screen,
to interactive mode with the voice UI drawing at the bottom
and pushing its target activity up like an IME.

Add mechanism to get assist data to the voice interaction UI.

Add some basic visualization of the assist data, outlining
where on the screen we have text.

Add a test ACTION_ASSIST handler, which can propagate the
assist data it gets to the voice interaction session so
you can see what kind of data we are getting from different
apps.

Change-Id: I18312fe1601d7926d1fb96a817638d60f6263771
reams/DreamService.java
oice/IVoiceInteractionSession.aidl
oice/IVoiceInteractionSessionService.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionServiceInfo.java
oice/VoiceInteractionSession.java
oice/VoiceInteractionSessionService.java
45cc62a33e0f0ea1a0a59b8c46c8bc8bda5872e9 13-Feb-2015 John Spurlock <jspurlock@google.com> Merge "NLS: Add a public signal value for an undefined filter value."
831041036587efbceb395bface176752a6b560bc 13-Feb-2015 John Spurlock <jspurlock@google.com> NLS: Add a public signal value for an undefined filter value.

We have three possible defined values for getInterruptionFilter().
i.e. All/Priority/None.

However, this value is only returned to listeners once connected,
otherwise we return 0, an undefined value.

This change gives a name to this undefined value to make it clear
that callers should not infer any meaning from it.

INTERRUPTION_FILTER_UNKNOWN = 0;

Bug: 19288429
Change-Id: I8ae94d1723289ca5714800906f9bf4e7e8111813
otification/NotificationListenerService.java
c051955392840cb94bd6f0b2a8107a48d2ffc8b0 12-Feb-2015 Scott Kennedy <skennedy@google.com> Mark findViewById(int) @Nullable

Change-Id: I9bf7c08a896bd9c28400ff832179abc579fd502f
reams/DreamService.java
b10e33ff804a831c71be9303146cea892b9aeb5d 04-Feb-2015 Jorim Jaggi <jjaggi@google.com> Split up android.policy into framework.jar and services.jar 1/3

Change-Id: Ifd69f1f3dd308a7e17a1442e2f3950da8b03cec4
reams/DreamService.java
4e106cedfecd1f6026a79870c2e427853cba7491 15-Jan-2015 Dianne Hackborn <hackbod@google.com> Bring back voice interaction APIs.

Change-Id: I6039d7c0b188ac342441c56f7d19994b9a80ba17
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
2ae3805efb920ee032535aad6599049e49525048 09-Dec-2014 Adrian Roos <roosa@google.com> Revert "Add overscan insets to surface frame dimensions in WallpaperService."

This reverts commit a2838dfc2c1c49b6638a59e82cd8758624efd660.

Bug: 18630625
Bug: 18659737
Change-Id: Ic02930e0200498289b781436cda1da6e4e1752bb
allpaper/WallpaperService.java
530052a2fe3b6a6a4246ce28ab0ced647fe7f470 30-Nov-2014 John Spurlock <jspurlock@google.com> Zen: New behavior for built-in downtime + nextalarm conditions.

- Downtime: Allow user to enter downtime early, offer as an end
condition four hours before downtime starts. Available in
either none or priority, regardless of settings configuration.
- Downtime: Always exit before next alarm if zen=none.
- Downtime: Make more like any other condition provider, remove
special status (mostly).
- Downtime: New auto-triggering rules, allow triggering after a
manual condition ends, once.
- Decouple NextAlarm + Downtime providers, allow them to offer
their conditions at the same time.
- Downtime/NextAlarm: Update conditions if they change while being
requested, even if unsubscribed.
- Make all three built-in condition providers optional, via config.
- New internal helper for runtime config.
- Don't follow changes to next alarm, consider the condition false.
- Isolate downtime calendar logic into separate class (for testing).
- Allow a:bb -> a:bb as a valid downtime range (all day).
- Volume dialog: configuration establishes maximum number of visible
conditions, including built-ins.
- Zen mode panel: avoid widget updates during layout transition.
- Zen mode panel: move controller callers to background thread.
- Zen mode panel: hide/show/rebind rows instead of adding/removing.
- ZenLog: Add downtime autotrigger results.
- Volume panel: Smarter refresh on ringer/zen changes.

Bug: 16373455

Change-Id: I4f801018ddb0beb6eb9fa03a81c79f7949888a3f
otification/ZenModeConfig.java
109ec376da86de1275f73fa432d6344431a457e9 04-Dec-2014 Cheuksan Wang <edwang@google.com> Merge "new SMS/MMS carrier app API" into lmp-mr1-dev
f675cad8f5f5781a29ccd733570d90bae3fe8d84 03-Dec-2014 Filip Gruszczynski <gruszczy@google.com> am 6e854ce5: Merge "Add overscan insets to surface frame dimensions in WallpaperService." into lmp-sprout-dev

* commit '6e854ce5728086b3bd293cb37bd83ebeef52aca8':
Add overscan insets to surface frame dimensions in WallpaperService.
a2838dfc2c1c49b6638a59e82cd8758624efd660 03-Dec-2014 Filip Gruszczynski <gruszczy@google.com> Add overscan insets to surface frame dimensions in WallpaperService.

Bug: 18595832
Change-Id: Ia5a03cc5e059153d76907627ee0811b0851e35ed
allpaper/WallpaperService.java
b72eb97e4bca1e4fd68e79f9d04e9a6a15aebd21 22-Nov-2014 Cheuksan Wang <edwang@google.com> new SMS/MMS carrier app API

Changes based on api council review

BUG: 18005911
Change-Id: I23bd207ce70f7fa201d6d964c1700cfc44cb009b
arrier/CarrierMessagingService.java
arrier/ICarrierMessagingCallback.aidl
arrier/ICarrierMessagingService.aidl
arrier/MessagePdu.aidl
arrier/MessagePdu.java
arriermessaging/CarrierMessagingService.aidl
arriermessaging/CarrierMessagingService.java
arriermessaging/CarrierMessagingServiceManager.java
arriermessaging/ICarrierMessagingCallback.aidl
arriermessaging/ICarrierMessagingService.aidl
arriermessaging/MessagePdu.aidl
arriermessaging/MessagePdu.java
3e0770163686c1be83959d681976dafaf25272e1 29-Nov-2014 John Spurlock <jspurlock@google.com> Zen: Improve zen mode panel condition selection.

- Decouple condition requests from expansion, now
pre-request when zen panel unhidden.
- Animate zen mode panel expansion.
- Improve default selection logic, ensure something
is selected as soon as we are in the expanded state.
- Tweak visual spacing.
- Map null condition to Indef properly when we start
out in zen.
- Avoid unnecessary condition teardown when the conditions
are updated but unchanged from current.
- Cap number of optional conditions to display, default=3.

Bug: 18335618

Change-Id: I007b7c3b2e75e2b42805af240684aa8581e9951a
otification/Condition.java
5bbb1af74a40f60d6609c2b1c580cb91ffb12c54 24-Nov-2014 Dianne Hackborn <hackbod@google.com> Merge "Work on issue #18486438: Reduce size of bugreport output" into lmp-mr1-dev
b5686d55963e76c801ca0581a1012c5f4aa8d009 24-Nov-2014 Jeff Brown <jeffbrown@google.com> am 3d110b23: Make WallpaperService watch the actual display state.

* commit '3d110b239153a6c7423a99f02ef859201205eee2':
Make WallpaperService watch the actual display state.
962b06f9a02f08392b6f87225a314ebf39dd7a07 24-Nov-2014 Selim Cinek <cinek@google.com> Merge "Fixed several time related states for secondary users" into lmp-mr1-dev
3d110b239153a6c7423a99f02ef859201205eee2 22-Nov-2014 Jeff Brown <jeffbrown@google.com> Make WallpaperService watch the actual display state.

Bug: 18471411
Change-Id: Ie9d2e70e4e105dfbb2cb4d9726f632bcf2cc0a31
allpaper/WallpaperService.java
d052a9416ae3f7e42fc1e7de0740021df385ee48 22-Nov-2014 Dianne Hackborn <hackbod@google.com> Work on issue #18486438: Reduce size of bugreport output

Reduce how much stuff ProcessStats spews, and do collapsing of
repeated intent filter targets when dumping IntentResolvers.

Also add to pm's checkout output to include shared user ids,
and fix output formatting in a few places.

Change-Id: Ic9fc6731f0439101ba9343535e66cdbbad47e291
allpaper/WallpaperService.java
9c4a707912da2c954b2d3d1311b8a691ded8aa16 21-Nov-2014 Selim Cinek <cinek@google.com> Fixed several time related states for secondary users

The 24 hour setting was not respected correctly. Also
fixed a bug where the next alarm would not display itself
in the QS panel.

Bug: 16239208
Change-Id: I89734f783912dead5831db49db53fba04dbf54ee
otification/ZenModeConfig.java
4e312d81c18b286170c904659e78cab4fdf27200 20-Nov-2014 Adrian Roos <roosa@google.com> Merge "Add device locked API for TrustAgentService" into lmp-mr1-dev
481a6df99fea124bc4354da34ff668750cdc9041 20-Nov-2014 Adrian Roos <roosa@google.com> Add device locked API for TrustAgentService

Bug: 18414067
Change-Id: I96c68af9ccc9940acf9fab3b5bd39a3485f01045
rust/ITrustAgentService.aidl
rust/TrustAgentService.java
d7a305bd43f6188b40ddea644a70c4685ae48fcf 14-Nov-2014 Abhijith Shastry <ashastry@google.com> Adding more javadocs to Carrier messaging API.

Change-Id: If0b476813c6cf02eef22bbca4e78726a038d2bfc
arriermessaging/CarrierMessagingService.java
arriermessaging/MessagePdu.java
fb8db1c84b7fd59f596a6c090a8035fab08ef2f5 13-Nov-2014 Abhijith Shastry <ashastry@google.com> Merge "new sms/mms carrier app API" into lmp-mr1-dev
f9c50c45c615338bf9bfe57cd1ecff490051c997 22-Oct-2014 Cheuksan Wang <edwang@google.com> new sms/mms carrier app API

BUG: 18005911

Change-Id: Ib961badc1ccac270f1244f8d971d9abec324b73f
arriermessaging/CarrierMessagingService.aidl
arriermessaging/CarrierMessagingService.java
arriermessaging/CarrierMessagingServiceManager.java
arriermessaging/ICarrierMessagingCallback.aidl
arriermessaging/ICarrierMessagingService.aidl
arriermessaging/MessagePdu.aidl
arriermessaging/MessagePdu.java
37d7a68de7e353c31a3a4736054cd86f0e002eaf 06-Nov-2014 Adrian Roos <roosa@google.com> Fix inset hinting when adding window

Windows with FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS were
getting an incorrect content inset hint, because the
hinting didn't see the adjusted systemUiVisibility.

Also adds hinting for the stable insets.

Bug: 17508238
Change-Id: If9647277feb6811b15665b801accd896c51dbd12
allpaper/WallpaperService.java
0814d41c73fe3ebc2d1269f1a4fc73d0cf4cb230 07-Nov-2014 Jim Miller <jaggies@google.com> Change Configure structure to List<PersistableBundle>

Adding the new structure was making it difficult for
LMP devices to have common source with upcoming API version.

Fixes bug 17008504

Change-Id: I704503cf0ebff113874c87ab11e37735dbe7b8d7
rust/TrustAgentService.java
262dc4dafede871712d89f35d630ab2a332ee6cb 06-Nov-2014 Jim Miller <jaggies@google.com> Merge "Update TrustAgentService API after review" into lmp-mr1-dev
e303bf443532c2ad756260133f00747bcff11e69 27-Aug-2014 Jim Miller <jaggies@google.com> Update TrustAgentService API after review

This change incorporates API council feedback and enables the
TrustAgent whitelisting API.

It also contains a minor cleanup of DPM's use of UserHandle
to eliminate unnecessary object creation.

Fixes bug 17008504

Change-Id: I63cc50169fde54b34406845818bcaf6aadc1a3db
rust/ITrustAgentService.aidl
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
cc30c8d729c9d846012ac6dd03c1e51262936e8f 05-Nov-2014 John Spurlock <jspurlock@google.com> Zen: Add the ability to enter "None" mode during downtime.

Updates to the shared config structure and the service backend.

Bug: 16373455
Change-Id: I45761690ba6b32eb81c9e2a5c1f2d4adad93e58d
otification/ZenModeConfig.java
37bc92cc2332eb6f864977381135c19d6a081a92 03-Nov-2014 John Spurlock <jspurlock@google.com> Zen: Create a new exit condition for "next alarm".

- If the user's next alarm is in the next 12 hrs, provide
this as an exit condition trigger for leaving none/priority.
- Don't display the next alarm condition when downtime is active.
- When the next-alarm exit condition is active, follow changes
to the next alarm, assuming it remains within the 12-hr window.
- Tweak the downtime condition strings to be consistent.

Bug: 16373455
Change-Id: I4020b91d323dead998e62d655132eca07438b148
otification/ZenModeConfig.java
c90e6fe863bb5ac84612bd777d3b352f69265950 28-Oct-2014 John Spurlock <jspurlock@google.com> Zen: Show "(until 4:56 PM)" in exit conditions.

Implement two-line exit conditions, display the duration + end
time on separate lines.

Bug: 16824863
Change-Id: I8dabc83042fce604ccb86b463b9bb547c7903c64
otification/ZenModeConfig.java
955d8d69ea6caabce1461dc25b339b9bf9dc61a6 08-Oct-2014 Dianne Hackborn <hackbod@google.com> Put in real "code" (aka marketing) name.

Change-Id: Idb3976edfae37293ed75cb5b869b4b42d8042bbe
otification/NotificationListenerService.java
c3328cacdad67623f94b13fceb734d958461a475 30-Sep-2014 Chris Wren <cwren@android.com> Merge "Add a returns clause to the matchesInterruptionFilter javadoc." into lmp-dev
0fef44de68c022a35aa34b6f36f8a183c827c684 30-Sep-2014 Chris Wren <cwren@android.com> Add a returns clause to the matchesInterruptionFilter javadoc.

Bug: 17641219
Change-Id: I4f1949902bf872823389f3db8e694e370e113295
otification/NotificationListenerService.java
9d38f35a8f4e2ae671337af20c640dffa92570c5 26-Sep-2014 Adrian Roos <roosa@google.com> Clear FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS for dreams

By default, dreams should not get the in-window bars
because those conflict with the lights-out bar mode.

Bug: 17367264
Change-Id: I8c041c706f7a7c4791ed4760c34a5618fb7423d7
reams/DreamService.java
957ed70273b2cf2bc65cd96ac0e91a35e58a0b6d 25-Sep-2014 Chris Wren <cwren@android.com> getCurrentInterruptionFilter should return the filter value, not the hints.

Bug: 17641218
Change-Id: I4a6ff073c04a3d3624916293824faba40f6226aa
otification/NotificationListenerService.java
2dac62c2e985ce1848b0fff751d4ed2cc3885c0c 19-Sep-2014 John Spurlock <jspurlock@google.com> Zen: Add events as a new config attribute.

Decouple events from alarms in the zen interception function,
and default the new allowEvents to true.

Bug:17580878
Change-Id: Iff10df385206ad73c3423ff118c79e94a10918d9
otification/ZenModeConfig.java
8cf8f71644643601fe8c3e9538fd00412b1ae8b1 15-Sep-2014 Sandeep Siddhartha <sansid@google.com> Fix issues with multiple languages and multi-users

For multi-user the issue was looking into the user ID of the current
process instead of the active user. The current process was the system
process and the call to UserManager was returning a user handle that
wasn't of any use while trying to map sound models to a user.

For language, the issue was that we were incorrectly just looking up the
model based on the keyphrase id, however we should have also taken the
enrolled model's locale into account.

Explicitly document that for model management the string representation of locales
is a BCP47 language tag.

Remove debug logging.

Bug: 16798166
Bug: 17462570
Bug: 17463511
Change-Id: Ieffb3e218de63f6e7f40af9705dced481a35b0ad
oice/AlwaysOnHotwordDetector.java
2175e9c366998ed7bd1a4501b94a02f4f49b932c 13-Sep-2014 Jeff Brown <jeffbrown@google.com> Add support for dozing after screen off.

On some devices, we want the screen off transition to complete before
we start dozing. Added a new config.xml attribute config_dozeAfterScreenOff
to configure this behavior.

Defer starting dreams until the display is ready.

Fixed some minor issues in the system UI doze service when setting the
display state.

Bug: 16187655
Change-Id: Ib1bc60de5457166f4b4880732db5df989dda67a4
reams/DreamService.java
c8e4fa41f22cc23937a8660992ee60502ed6e13f 10-Sep-2014 Jason Monk <jmonk@google.com> Merge "Move zen mode constants and code to framework" into lmp-dev
3e5d59c3653700e4dfe77b665eba0bbc88e470de 10-Sep-2014 John Spurlock <jspurlock@google.com> Merge "Zen: make Condition available over @SystemApi" into lmp-dev
9034f2452b94363bf4c868a32c4f7fed4ad6dc6a 10-Sep-2014 John Spurlock <jspurlock@google.com> Zen: make Condition available over @SystemApi

Fix build.

Bug:16819503
Change-Id: I011723a770a9a8b7fc8124defd56137ec5f1704e
otification/Condition.java
4dd81467e33a694138da6916fc68ca79501a9429 08-Sep-2014 Jason Monk <jmonk@google.com> Move zen mode constants and code to framework

This allows the strings and code to be shared with settings.

Bug: 15454830
Change-Id: I9300af4f8b6d80042452b75db3418b20c5c5cc81
otification/ZenModeConfig.java
bf4e41747d138bf89c6c3fa5076a38334d3b45e1 10-Sep-2014 John Spurlock <jspurlock@google.com> Zen: Make condition providers available via @SystemApi.

Bug:16819503
Change-Id: Ibd7004f7a0928d3f14f9ccd55088cf645d5285e2
otification/ConditionProviderService.java
c8e1d78af967579a5a3227f3234420baca49042f 10-Sep-2014 Christoph Studer <chstuder@google.com> Merge "NoLiService: Delete @removed meetsInterruptionFilter" into lmp-dev
2f439763bd4ce8b38ab66ed45e3d8ed4a31e9a33 09-Sep-2014 Griff Hazen <griff@google.com> Merge "Remove reference to StatusBarNotification after the value is accessed." into lmp-dev
bb8c4834613207cf880e8491b33eb495cc268548 09-Sep-2014 Dianne Hackborn <hackbod@google.com> Merge "Add new wallpaper features for insets and offsets." into lmp-dev
704dd61f5be9266b3cfdfeb407b6fc4822bac7af 09-Sep-2014 Christoph Studer <chstuder@google.com> NoLiService: Delete @removed meetsInterruptionFilter

This should not break any apps as this API has been marked
@removed more than a week ago.

Bug: 17425123
Change-Id: I19d7e933a3f2a59e1b406a9f87d272f058a13e0d
otification/NotificationListenerService.java
067e5f68b9216b233df1c6529db182ff9b2887ab 08-Sep-2014 Dianne Hackborn <hackbod@google.com> Add new wallpaper features for insets and offsets.

Issue #17394151: WallpaperService / Engines need to get notified
of WindowInsets

Issue #17394203 Wallpapers need a system API to be shifted in order
to support burn in protection

Adds a new API on WallpaperManager to set additional offsets to
make wallpapers extend beyond the display size.

Insets are now reported to wallpapers, to use as they may. This
includes information about the above offsets, so they can place
their content within the visible area. And to help with this, also
expose the stable offsets APIs in WindowInsets which is also very
useful information for the wallpaper.

Another new API on WallpaperManager to set a raw offset to apply
to the wallpaper window, forcing it to move on the screen regardless
of what the wallpaper is drawing.

Fix wallpapers when used with overscan enabled, so they still extend
out across the entire screen. Conveniently, the above new window
insets information is very useful for this case as well!

And a new wallpaper test app for all this stuff.

Change-Id: I287ee36581283dd34607609fcd3170d99d120d8e
allpaper/IWallpaperEngine.aidl
allpaper/IWallpaperService.aidl
allpaper/WallpaperService.java
50c290406af81850a5d876754fd2bb4bd29df5d4 08-Sep-2014 Dharmesh Mokani <mokani@google.com> Remove old methods : AlwaysOnHotwordDetector

Bug: 17389896
Change-Id: I47d0ae3ecad0ce8a74ed65a73309faa541b74a06
oice/AlwaysOnHotwordDetector.java
e9aac5f44d7bf8c4a523773e57c30fd8340850eb 06-Sep-2014 Griff Hazen <griff@google.com> Remove reference to StatusBarNotification after the value is accessed.

StatusBarNotificationHolder values are fetched exactly once.

Bug: 15426276
Bug: 16575857
Change-Id: I3d11aba717d17426d31e7b1a07560f6b7e79c4ec
otification/IStatusBarNotificationHolder.aidl
69dd40d08a164d5c357442733cf291719dfe94e8 05-Sep-2014 Griff Hazen <griff@google.com> Merge "Reduce chance of notification listener dropped messages." into lmp-dev
ae686a51288031271685861436f7c67201791d09 04-Sep-2014 Dharmesh Mokani <mokani@google.com> Address API review comment:AlwaysOnHotwordDetector

- Methods creating an Intent should be named createFooIntent

Bug: 17389896
Change-Id: Icb9c9f9ca3a41fca09f79ff22b99988a1ded331f
oice/AlwaysOnHotwordDetector.java
3ad4e3a45bbe44129b14c4d391431e44f1e04f0c 02-Sep-2014 Chris Wren <cwren@android.com> Honor per-app sensitivity setting.

Settings are stored by NotificationManagerService in the policy file,
and are communicated to NotificationListeners via a hidden API on the
RankingMap object.

Bug: 16324353
Change-Id: I2d5cf6782273744cbf9b309dec76780cc0a4c39e
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
1097b155698190d6ce79ef20edf45737d9f8de19 03-Sep-2014 Christoph Studer <chstuder@google.com> Merge "NoMan: Drop archive size to 100, strip EXTRA_BIG_TEXT" into lmp-dev
84a00ea9e3df3ff051d3e86945d2befea32072ee 03-Sep-2014 Griff Hazen <griff@google.com> Reduce chance of notification listener dropped messages.

The existing code for notification manager/listeners uses a oneway
binder api to deliver messages. One problem with this is that
notification objects can sometimes get fairly large, and can bump
into the oneway binder transaction buffer if many happen at once.

To reduce this issue, flip the service into a oneway delivery of
a status bar notification holder, whose wrapped content is then
immediately fetched upon receipt of the one-way message. This moves
the meat of the fetch to be over a two-way interface without changing
the properties of which object is actually sent (a tickle solution
with lookup key would have changed this)

Further research: attempt to chunk notification objects themselves.
They can sometimes transfer hundreds of KB over a binder transaction.

Bug: 15426276
Change-Id: Ib1a1f4ff848c16f80bcf2ae4dfd2b87a9091f0b2
otification/INotificationListener.aidl
otification/IStatusBarNotificationHolder.aidl
otification/NotificationListenerService.java
d7c0395d26694c594c3e64b16ab647c971aeb422 30-Aug-2014 Dianne Hackborn <hackbod@google.com> Hide the interaction part of VoiceInteractionService.

Also the ability to start voice activities is turned off,
though for testing purposes it can be turned back on with a system
property.

Change-Id: I867704d32c53beeb851ceea9b45c28bf5c01ef61
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
223f44e1d2cc56fa965cdb9f112afae1c498cbbd 02-Sep-2014 Christoph Studer <chstuder@google.com> NoMan: Drop archive size to 100, strip EXTRA_BIG_TEXT

Bug: 15557701
Change-Id: I348b9648dbb941b2fa40b169d5ca82b9f9ba21f4
otification/NotificationListenerService.java
b82bc785c966b59621a3a2523ba7cdf84a73697b 20-Aug-2014 Christoph Studer <chstuder@google.com> NoMan: Allow listeners to specify notification trim

Bug: 16574195
Change-Id: I116080df8b73d73040cf9dbc751e25ee118641d7
otification/NotificationListenerService.java
503a102143e7ecd25721313a4edad613a3688ada 29-Aug-2014 Sandeep Siddhartha <sansid@google.com> Merge "Address API review comments" into lmp-dev
85a384b4256121eb85b7e72bcd50f3348f365d41 27-Aug-2014 Christoph Studer <chstuder@google.com> NoListener: Factor out ZEN mode API

Bug: 17255109
Bug: 17295014
Change-Id: I7e1f6e29b8a23b8e59a8615a8012a86bd5dd22d7
otification/INotificationListener.aidl
otification/NotificationListenerService.java
b1474f4432097cf20c06b471b57359ddd16fe460 27-Aug-2014 Jim Miller <jaggies@google.com> Hide trust agent whitelisting until new API is ready.

Fixes bug 17008504

Change-Id: Ic93d52042e9b6d6f7d634f22aa04642f2da1af32
rust/TrustAgentService.java
ee16bdc33d32e923032073919ded1f2efe9677e1 25-Aug-2014 Sandeep Siddhartha <sansid@google.com> Address API review comments

- Make Callback an abstract class
- Split manage intents into 3 different methods
- Remove RECOGNITION_FLAGS_NONE

Bug: 17255602
Change-Id: I1329f889bb2ab35938f42d2ecfe755d2b17ec542
oice/AlwaysOnHotwordDetector.java
e7b6b1aae7bb5a2566ade373c21c44dff62d2768 27-Aug-2014 Jim Miller <jaggies@google.com> Merge "Hide fingerprint API until new API is ready" into lmp-dev
ce7d6d292b2309eff95d4206b09858f13fff5213 26-Aug-2014 Christoph Studer <chstuder@google.com> NoListener: meetsInterruptionFilter -> matchesInterruptionFilter

Rename Ranking.meetsInterruptionFilter() to matchesInterruptionFilter()
as suggested by API council.

Marking the old version @removed for now, will remove once prebuilds had
the chance to update.

Bug: 17255109
Change-Id: Iaee094df2dddf82029e127c194ea88581d1a48bb
otification/NotificationListenerService.java
ea75fddbb452638f286c2fcdbddff145ee1a85cb 12-Aug-2014 Dan Sandler <dsandler@android.com> Allow listeners to fetch current notifications by key.

Bug: 16574195
Change-Id: I269dbcc7fc8912d84229f6a3d950b0015625ae7a
otification/NotificationListenerService.java
777f5b2f47840357e95f3354b83cf500ba82f0ee 26-Aug-2014 Jim Miller <jaggies@google.com> Hide fingerprint API until new API is ready

Fixes bug 16487912

Change-Id: I7dff69a983fb0da4b41e23266a6ec92058e03dbc
ingerprint/FingerprintManager.java
ingerprint/FingerprintManagerReceiver.java
ingerprint/FingerprintUtils.java
07b4a6f42d75909785f4362181619983e21894eb 23-Aug-2014 Sandeep Siddhartha <sansid@google.com> Remove the old API for creating hotword detector

To be submitted only when the prebuilts have been updated

Change-Id: I7136b6a492610e4673f005b2d1682ce90ddb43a5
oice/VoiceInteractionService.java
fb30d6936a4793a3369fbf8bf51fa526b8a77272 24-Aug-2014 Sandeep Siddhartha <sansid@google.com> Fix conversion of locale from BCP47 language tag

Bug: 17187528
Change-Id: Ifcf707c9be736885f3fc79f3c36087ecf9092971
oice/VoiceInteractionService.java
a434963fade86654c46ca3a3538ef0e0150f73d0 23-Aug-2014 Sandeep Siddhartha <sansid@google.com> Merge "Fix the Locale story in the hotword API" into lmp-dev
dcf3068fcb55f101680e70a8a6f84f3b2c9cb1e3 23-Aug-2014 Sandeep Siddhartha <sansid@google.com> Fix the Locale story in the hotword API

Tighten the API by taking in a locale rather than a string tag.
Tighten the checks when reading the enrollment metadata, bail out if any
attribute is missing or invalid.
Add missing recycle call for a TypedArray

Stop recognition when sound model(s) change. This is needed during
un-enrollment/re-enrollment.

Bug: 17187528
Bug: 17205230
Change-Id: Idb00b51ef8c4ea0a8f8993decea582223181fa3d
oice/AlwaysOnHotwordDetector.java
oice/VoiceInteractionService.java
d4efaac5d54cdb3735b032bb76a5639949f33216 15-Aug-2014 Jim Miller <jaggies@google.com> Update TrustAgentService API after review.

Also documents timebase on related DevicePolicyManager API.

Fixes bugs 16401527 and 17046034

Change-Id: I8ee6d0055ab6f52ec71630344d3232f7875d9c1d
rust/ITrustAgentService.aidl
rust/TrustAgentService.java
d1d7c022c6f83e836acb74eed1a5a201e495bd85 20-Aug-2014 Amith Yamasani <yamasani@google.com> Rename restrictions API class and method

AbstractRestrictionsProvider -> android.service.restrictions.RestrictionsReceiver
requestPermission->onRequestPermission

Bug: 17006805
Change-Id: I03b1626d6abcd2ad739a55b60b54fdbf9810ceca
estrictions/RestrictionsReceiver.java
4db0d98b42a723f2e16c6595e85e866fd26c6d98 13-Aug-2014 John Spurlock <jspurlock@google.com> Zen: Downtime now a condition provider, persist conditions.

- Persist the entire exit condition instead of only the id.
- Make downtime a proper condition provider (similar to the
existing countdown provider for time-based conditions)
- Move all downtime-related items out of ZenModeHelper and
into the new condition provider.
- Reevaluate downtime more often, when any of its inputs change.
- Make sure downtime appears as an available condition in the
condition panel when applicable.

Bug:16296125
Bug:16211189
Bug:17031767
Change-Id: I1d8269a4e6fe170ce776bf932dbbdfb29dd25dd7
otification/ZenModeConfig.java
65c09b10ca73d369e836074eeba38e01cd4c05b6 14-Aug-2014 Adrian Roos <roosa@google.com> Remove setManagingTrust workaround

Bug: 16622870
Change-Id: Ibdfdd420996081c055d0364f77b65dea6060cb9e
rust/TrustAgentService.java
396181b0cb0d8b83c6abde333963b2acf871272f 13-Aug-2014 Andres Morales <anmorales@google.com> Mark PDBManager as a SystemApi

This will allow us to XTS test these APIs

Change-Id: Ife942f73580ea24eb6801b079b642d7c67107ab0
ersistentdata/PersistentDataBlockManager.java
ecc7498b2bcf65adf20f5544a2994c68b75f8cea 13-Aug-2014 Dianne Hackborn <hackbod@google.com> Turn off voice interaction service restrction for now

Need to wait for the prebuilt to update.

Change-Id: I5501c2ba23e6e18379aa0859b248446c82de6cdc
oice/VoiceInteractionServiceInfo.java
a3fb40d5f492825bb86769f541620baca5616e05 13-Aug-2014 Dianne Hackborn <hackbod@google.com> Add 560dpi, and some other stuff.

Like new settings actions for some of the new settings panels.
And fix voice interaction services so they require a recognizer.
And tweak array map doc to be correct.

Blah blah blah.

Change-Id: Ib5e66b574b10e7b3fa39723b21046a74e6ead204
oice/VoiceInteractionServiceInfo.java
e2c020a449cf1de10230d2ac31a083f342aa75c8 12-Aug-2014 Barnaby James <bjames@google.com> Fix VoiceInteractionService.isActiveService().

Change-Id: Ifda467bfae0d15fe4ea0fd15ffc0e9612401b218
oice/VoiceInteractionService.java
97887cf2555b395524ac4f9105c30a1a49c93684 11-Aug-2014 Sandeep Siddhartha <sansid@google.com> Merge "Remove direct field access from event payload" into lmp-dev
d5730bc88c24531d63ca4e818d7063498470b69e 09-Aug-2014 Sandeep Siddhartha <sansid@google.com> Remove direct field access from event payload

Change-Id: I0b4462e56a977bfbaaebd2dd31d9246051af1b99
oice/AlwaysOnHotwordDetector.java
6df952ec2208714d3206c54987eb388aee799be6 09-Aug-2014 Sandeep Siddhartha <sansid@google.com> Add debugging info to VIS via dump()

Change-Id: I9e8f4536de309256db835b30d94765bfc27d4e80
oice/AlwaysOnHotwordDetector.java
oice/VoiceInteractionService.java
a351ab96987381ffe7ea29a7cdec1e7fbd1497d5 09-Aug-2014 Dianne Hackborn <hackbod@google.com> Fix issues 16739817 and 16709247 in voice interaction service.

Issue #16739817 VIS doesn't start for non-primary user(s)
Issue #16709247 GSA is not the default voice interaction agent

These are both fixed by getting rid of the existing code for applying
the default voice recognizer, moving it in to the voice interaction
manager service, and extending it to also set up the default voice
interaction service.

Change-Id: If8d5936c28aebfa7eff77c8d99241c3a2ffdb0a4
oice/VoiceInteractionServiceInfo.java
06629c1f2ef25079588783e5495ccc4e6c3bb856 09-Aug-2014 Sandeep Siddhartha <sansid@google.com> Merge "Add the capture session (and its availability) in the EventPayload" into lmp-dev
fd7070fdff6864abf750beaef697cc2fdb8c5eb9 08-Aug-2014 Sandeep Siddhartha <sansid@google.com> Add the capture session (and its availability) in the EventPayload

Keep it hidden till the API to start capture using a session isn't public

Bug: 16731718
Change-Id: I112dec307257739ef1e6c5c1e0358b6ecabe9a9e
oice/AlwaysOnHotwordDetector.java
5c8ea2c369deab75719fe7c7301846a8ef955702 08-Aug-2014 John Spurlock <jspurlock@google.com> Merge "New api to sync zen mode state from listeners." into lmp-dev
9a35d78cad1a4cf9639053c24139147e658ec055 07-Aug-2014 Dianne Hackborn <hackbod@google.com> Fix to call VoiceInteractionSession.onDestroy().

Change-Id: I2b4f19538700c691dac3a83aadfa0959ef1fe458
oice/VoiceInteractionSession.java
cb4e81c7fe1ec843d80f7604a688c71086c23685 06-Aug-2014 Sandeep Siddhartha <sansid@google.com> Handle microphone contention/Phone calls while recognition is active

Internally we pause the recognition when:
- a phone call is active/off-hook/ringing
- or some other application grabs the microphone

we auto-resume when the condition that caused us to pause reverses.

Both these events are notified to the client via callbacks so that they can choose to display on their UI,
that the recognition is paused for some reason.

Bug: 16515468
Bug: 16740806
Bug: 16514535
Change-Id: Ib274d68522c8cf37d42402c875b16159957657f0
oice/AlwaysOnHotwordDetector.java
2178e2e085056186141ac44563103c6f455de89c 06-Aug-2014 Sandeep Siddhartha <sansid@google.com> Read audio format from the recognition event

Bug: 16549061
Change-Id: I9e418f7be67eb330b7bfaa97bbb90d0b5640469d
oice/AlwaysOnHotwordDetector.java
3962aa5d401a433badb757b3c3a3bb4e2b6acb3b 06-Aug-2014 Sandeep Siddhartha <sansid@google.com> Merge "Use @IntDef for manage actions" into lmp-dev
0db30899f0d44e4fbaddffb79cc3415db6efb657 04-Aug-2014 Sandeep Siddhartha <sansid@google.com> Use @IntDef for manage actions

Change-Id: I12473fb82bf865af36aaf681a1b12a19e9f218fc
oice/AlwaysOnHotwordDetector.java
976e8bd2017d0263216c62111454438cc0f130e3 17-Jul-2014 Svetoslav <svetoslavganov@google.com> Allow adding widgets from user profiles.

The goal of this change is to enable support for appwidget from
user profiles to the user main profile. A user profile is a user
which is associated as a child of the main user profile. For example,
a user may have a personal (parent) and corporate (child) profile.
The device policy should be able to control whether adding a widget
from a child profile and given packages is allowed. This change
assumes that all packages from managed profiles are white listed.
Another change will add the device policy changes.

Change-Id: I267260b55d74c48b112a29979a9f59eef7a8194e
otification/StatusBarNotification.java
d3b8223377b8046280e4c09e728edc600171f941 30-Jul-2014 Eric Laurent <elaurent@google.com> SoundTrigger API update.

Add sound model update callback.
Add native service state change callback.
Add vendor UUID in sound model description.
Add coarse confidence level in recognition event.
Add capture format in recognition event.

Bug: 12378680.

Change-Id: Id63437819ec7b9a4a69e1ff6185b747e20cad95e
oice/AlwaysOnHotwordDetector.java
d8afe3c41e65a8f6ff4283c124ba250c92cf50c6 01-Aug-2014 John Spurlock <jspurlock@google.com> New api to sync zen mode state from listeners.

- Allow connected listeners to request changes
to the primary device's interruption level.
- Rename alerts -> effects in the other constant,
which does not affect interruption level.
- Rename "flags" -> "hints"
- Basic NoMan wiring for level hint.

Bug:15888672
Change-Id: I2b07fb2c9d32a143fff7c260b7d2cd4d0cd3a592
otification/INotificationListener.aidl
otification/NotificationListenerService.java
ce2e23ff69427a069cbdcd6bf4fa6097cbf04b4d 03-Aug-2014 Christoph Studer <chstuder@google.com> NoMan: Fix speedbump when no low-prio notifs

Bug: 16705179
Change-Id: I32329710c27052c35b64ba91759200341ed0b127
otification/NotificationListenerService.java
5e33fb057c20b84418d96574abe861e9d05956eb 02-Aug-2014 Sandeep Siddhartha <sansid@google.com> Stop recognition when shutting down VIS

Bug: 16629417
Change-Id: I9c98d7e6d487d3eaff604df401c320f8554589f9
oice/VoiceInteractionService.java
2c0273e50a3162595e9a54030166f2369b039a5a 01-Aug-2014 Sandeep Siddhartha <sansid@google.com> Add a flag for multiple triggers with same recognition session

Also annotate the flags with @IntDef to make things clearer and safer

Add more debug logging

Revert to start/stop being synchronous since telephony and microphone will
need to be handled internally.

Bug: 16731586
Bug: 16514535
Bug: 16549061
Change-Id: I83695d52e9547269c95d443e4d921c9238b7401e
oice/AlwaysOnHotwordDetector.java
011dcbfa23b912bcfddbd8bd98c3202caf3de458 31-Jul-2014 Sandeep Siddhartha <sansid@google.com> Cleanup some documentation with @see references to constants

Change-Id: I1c9c4f25525732ecfecdf1faa91e0f24805ef295
oice/AlwaysOnHotwordDetector.java
668327d0286591324fa7592ee9b39255076e2165 29-Jul-2014 Sandeep Siddhartha <sansid@google.com> Tighten the checks around a detector being invalidated

Don't call back for a detector being marked invalid because
that happens when someone else obtains a detector or VIS shuts down,
in either case we don't want a loop where two entities keep creating new detectors
and being invalidated.

Don't call back on an invalid detector for availability change/detected/started and stopped
only propagate errors.

This helps us with cases where a callback for the previous VIS may get called and then crash because it
tries to make calls without being the current VIS.

In the new scheme of things, if the VIS changes, or the current VIS obtains a new AlwaysOnHotwordDetector,
the previous one is shutdown and internally marked as invalid and all calls to it fail with an IllegalStateException.

Bug: 16629417
Change-Id: I74417bf76ba80916ebc21b042c18b3467857733e
oice/AlwaysOnHotwordDetector.java
4579fd2d0c23f92546633e472439f9207acb3ae0 30-Jul-2014 Christoph Studer <chstuder@google.com> Merge "Strip RemoteViews from Notifications, re-create them in SysUI" into lmp-dev
4600f9b60753adab4e65258a05744a46938fce86 22-Jul-2014 Christoph Studer <chstuder@google.com> Strip RemoteViews from Notifications, re-create them in SysUI

Bug: 16329721
Change-Id: Ic0bea763ffaec4c5644ca78705007211ac6b4b88
otification/NotificationListenerService.java
1ed12ddb8c46193cc4d790b9c7d6a5d61afb3311 29-Jul-2014 Sandeep Siddhartha <sansid@google.com> Make startRecognition async

- This is needed for telephony and audio integration which should happen via async callbacks
that'll end up starting/stopping recognition.

e.g. if a startRecognition happens when in a phone call - the onDetectionStarted will get called once the phone
call ends.

For now the transient stoppages due to internal reasons will not be propagated back to the client.

Bug: 16514535
Bug: 16515468
Change-Id: I1b2b8edd28f5c5e67c453f66c23e1a67a626114e
oice/AlwaysOnHotwordDetector.java
dda48f12212a24371de0e6ba2e5e637925cd9b5e 29-Jul-2014 Christoph Studer <chstuder@google.com> NoListener: Optimize RankingMap

Cache ranks and interception bits instead of re-calculating
them every time they're accessed.

Change-Id: I2c6bbeaa01648d03ff8b3690b7f21cef4e2b9d97
otification/NotificationListenerService.java
8f21158fe64eb93ff005dc1b831b282b95531023 29-Jul-2014 Adrian Roos <roosa@google.com> Trust: Make setEnabledFeatures asynchronous

Unsynchronizes the call into app code from setEnabledFeatures,
replacing it with a callback mechanism. Also makes this actually
work by fixing the check in TrustManagerService to take into account
whitelisting.

Change-Id: I0831752cd2d3158eda9c8404a5569498f11ac2ac
rust/ITrustAgentService.aidl
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
7861c663fd64af33ec2a4c5ad653c806dc8bd994 25-Jul-2014 Adrian Roos <roosa@google.com> Add setManagingTrust and expose it on lockscreen

Adds a facility for trust agents to indicate if they
are ready to manage trust. Also adds an indication to
the lock icon on the lockscreen to show whether trust is
being managed.

Bug: 15518469
Bug: 16123013

Change-Id: Ie17f588aebeafe66c81dea4a69c733b0d2c72fd4
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
6817337118655d5792e36e954b123e6daa4174a6 28-Jul-2014 Sandeep Siddhartha <sansid@google.com> Read the keyphrase ID from the recognition event

Bug: 16516658
Change-Id: Ibeee81c9543aa1091bb075066cfc2269107f13c0
oice/AlwaysOnHotwordDetector.java
a06d5ca1d96af3555ad4e384994e6321a0c5bb9c 28-Jul-2014 Adrian Roos <roosa@google.com> Make TrustAgentService a SystemApi

Bug: 16401527
Change-Id: I6d19281600bacac7c8a29afc07c39ca1d461d23c
rust/TrustAgentService.java
604e7558ef32098644b2f9456d7743a07ae789dc 19-Jul-2014 Jim Miller <jaggies@google.com> Add new DevicePolicyManager API to allow fine-grained TrustAgent management

This adds a new feature that allows a device admin to specify a
whitelist of features that are allowed for the given admin.

Change-Id: I83f853318efbcf72308532d0a997374f73fa9c10
rust/ITrustAgentService.aidl
rust/TrustAgentService.java
39c12fab49075b715c253c68c84b5c10c3150197 26-Jul-2014 Sandeep Siddhartha <sansid@google.com> Use blob (shared memory) for large data in sound model/recognition event/config

Also add a missing null check in writeBlob

Bug: 16516353
Change-Id: Ie702f8daae541cab7c2cee6e13d49e7fc84c84e1
oice/AlwaysOnHotwordDetector.java
0f208eb707926f0afc1ce073be866bedd4955aa2 27-Jul-2014 Jeff Brown <jeffbrown@google.com> Remove DozeHardware since it will not be used.

Bug: 16516536
Change-Id: I14597d3c9470c94e3bc5b8cff500d2fe6b2fd977
reams/DozeHardware.java
reams/DreamService.java
reams/IDozeHardware.aidl
reams/IDreamManager.aidl
452a642430e3f8abfa053e48893dd0edfb12799b 25-Jul-2014 Sandeep Siddhartha <sansid@google.com> Fix various bugs with model management

- Tie the sound model and keyphrase for simplicity
We won't support multiple keyphrases in a single model out of the box.
The db schema will need to be changed by the OEM wishing to add multiple hotwords.
This is because we currently have no way to test the flow and make sure that things work well with multiple keyphrases
and also the framework only reads the metadata for one keyphrase.

- Make the delete/update operations atomic

- Make the flow of data from Enrollment -> VIMS; the large sound model doesn't cross the process boundary any other time.
This is achieved by passing they key around, instead of the model themselves.

- Add a specific delete operation in DatabaseHelper rather than relying on emptying the keyphrases to delete.

Bug: 16555803
Bug: 16516353
Change-Id: I1e0cce137517502a669e431ca7e9f9f755598328
oice/AlwaysOnHotwordDetector.java
1031c974855ff4117a6d7866e664295786840319 23-Jul-2014 Chris Wren <cwren@android.com> Honor the sort and group keys for notification ranking.

Sort notifications naturally, then move group childen to be next their proxy.
The group proxy is the summary, or if no summary exists, the lowest-ranked
member of the group is chosen as the proxy.

Notifications with a sortKey but no group and placed into a synthetic
group that consists of all notifications from that package and user in
the same priority bucket that also have sortKeys.

Expose a new API for listeners to get the group key for the notificaiton.

Bug: 15190903
Change-Id: I324ba0c394affdabb3588ca2ebafa7cf0acad2af
otification/StatusBarNotification.java
cf7ed583080b6c958f5a02817110505bae2a17df 23-Jul-2014 Chris Wren <cwren@android.com> Revert "Honor the sort and group keys for notification ranking."

This reverts commit df09d4c348f9f2aea10391b27d157d8b71a9e189.

Change-Id: Idbc9ed5c5c83cd0cad5a71872bcc203321a11e9e
otification/StatusBarNotification.java
4a24fd3c7bab53e4e9c127214e7168db0af8800a 17-Jul-2014 Chris Wren <cwren@android.com> Honor the sort and group keys for notification ranking.

Sort notifications naturally, then move group childen to be next their proxy.
The group proxy is the summary, or if no summary exists, the lowest-ranked
member of the group is chosen as the proxy.

Notifications with a sortKey but no group and placed into a synthetic
group that consists of all notifications from that package and user in
the same priority bucket that also have sortKeys.

Bug: 15190903
Change-Id: I377ed65b9592079446da4a4189f5ab49d28630ec
otification/StatusBarNotification.java
f63bc523eadbe01ce0a5ad52868a5dccb3d5f6dd 22-Jul-2014 Sandeep Siddhartha <sansid@google.com> Make hotword availability a callback

This helps us make the list sound models operation an async one, it also helps us
with the case where a detector is invalidated, so the client doesn't have to keep checking the
state.

Synchronize DatabaseHelper methods on its instance so that other VoiceInteractionManagerService
calls aren't blocked on db writes/reads.
It's still possible for the list operation to be blocked on update and vice-versa

Change-Id: Ib8ec4ac5056b62d443038560ce31d0641b4627b0
oice/AlwaysOnHotwordDetector.java
oice/VoiceInteractionService.java
6daae9622672e0b38fc2efed29f68061d749cacc 21-Jul-2014 Sandeep Siddhartha <sansid@google.com> AlwaysOnHotwordDetector needs to reflect enrollment changes

Add a callback for when any sound model change happens. This helps the VIS
to re-check the availability and either enroll the user, or start/stop recognition.

Also shut down any active recognition when VIS dies, or a different hotword detector instance is obtained from VIS.

Change-Id: I03f94e78c6ee307afe822a84aebc7e74c64de7b4
oice/AlwaysOnHotwordDetector.java
oice/IVoiceInteractionService.aidl
oice/VoiceInteractionService.java
1fa865f396e94913cfbbd32ce7799c2e8aeb7a08 21-Jul-2014 John Spurlock <jspurlock@google.com> New NotificationListenerService listener flags api.

Give activated listeners the ability to request changes to
listener-level or host-level state.

Currently this consists of the ability to suppress notification alerts
(alerts = the haptic / audio feedback of a notification).

Bug:15888672
Change-Id: I045e3b99d1f15e3f96ebaf17d3083a97e02ecb42
otification/INotificationListener.aidl
otification/NotificationListenerService.java
970d4132ea28e748c1010be39450a98bbf7466f3 19-Jul-2014 Jeff Brown <jeffbrown@google.com> Allow dreams to control screen state and brightness.

Added setDozeScreenState() and setDozeScreenBrightness() methods to
DreamService. The values specified here only take effect once
startDozing is called and can be changed while dozing.

This required some significant rework of the display power controller
but the result seems quite nice and better represents the policy
we want to apply.

Changed the test dream a little bit to make it flash the screen
every minute using the new functions.

Bug: 15903322
Change-Id: I83bcc34503f1b87727d2b2b3c0ef08507f9f0808
reams/DreamService.java
reams/IDreamManager.aidl
110f569b47bc21fb38ec25b6110ee302ce137e06 20-Jul-2014 Sandeep Siddhartha <sansid@google.com> Fix synchronization issues in AlwaysOnHotwordDetector

- Remove unnecessary recognition status from AlwaysOnHotwordDetector

- Remove unnecessary recognition started callback from IRecognitionStatusCallback

- Fix a bug around the fact that we weren't picking up enrollment at runtime because
we were storing the availability at instantiation time.

- Handle 0-length arrays in SoundTrigger classes while parceling/unparceling

- Fix issue in SoundTrigger helper where we were not comparing binders for start/stop calls

- Unload the previous model when starting a new recognition

- Add more debug logging

Change-Id: Icc56d7f3dd1ffa49a8cfeea49080e3ab4d342c32
oice/AlwaysOnHotwordDetector.java
055897208d659e9734a82def88be4a806ff55448 18-Jul-2014 Sandeep Siddhartha <sansid@google.com> Move sound trigger calls to VoiceInteractionManagerService

- This ensures that any data being loaded on the DSP comes from the framework

Change-Id: Ie15f0994850ba8f298ca07c49fe0b89e066d9e2b
oice/AlwaysOnHotwordDetector.java
oice/VoiceInteractionService.java
f6d466895b74d620d646abbec1c8911f3a0ce0bb 18-Jul-2014 Jeff Brown <jeffbrown@google.com> Allow dreams to wake up gently.

This change adds a new DreamService.wakeUp() method to allow a
dream to wake itself up gently and perform a transition before
finally finishing. The power manager will ask a dream to wake
up gently in most cases but may force it to happen immediately
when necessary.

If the dream takes too long to finish itself then the dream
controller will douse it with water summarily after 5 seconds.

Change-Id: Ib0564c5650cd5a454e1acc5aa91fe46995eecfa7
reams/DreamManagerInternal.java
reams/DreamService.java
reams/IDreamManager.aidl
reams/IDreamService.aidl
963295ea105314e28e4ca9563aa09cb7440de4c3 11-Jul-2014 Andres Morales <anmorales@google.com> Permit settings to "wipe" the persistent partition

One of the requirements is that when the user does a
factory reset through settings, all data on the
persistent partition should be cleared.

This adds one last API method that allows settings
to wipe the partition.

Bug: 14288780
Change-Id: Ib87ee741d1e5195814516ae1d66eb7c4cf754dcf
ersistentdata/IPersistentDataBlockService.aidl
ersistentdata/PersistentDataBlockManager.java
fee756ff91ab4d8f0e09ddb050d22d88ebb66ae7 17-Jul-2014 Dianne Hackborn <hackbod@google.com> Implement issue #16330060: Inform ActivityManager about WebView...

...state changes.

Add a new API to tell the activity manager about a new dependency
one process has on another package. Start using it already for
when apps is Context.createPackageContext() to load code from another
app.

Also do some work on getting the monitoring of proc/uid states
in shape so it can be used by unundled code, along with an
AppImportanceMonitor class for doing so.

Some small fixes and additions to VoiceInteractionService.

Improve handling of unaccounted/overcounted battery use so that
they aren't shown to the user unless they are significant.

Change-Id: I22dd79a73f4e70103d3f8964494aebc8a31f971c
oice/IVoiceInteractionService.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionServiceInfo.java
e6cd2476aa9d07df0de0a0081ab66d8401a7e228 11-Jul-2014 Sandeep Siddhartha <sansid@google.com> Add recognition modes to the enrollment metadata

This will be used by the Voice interaction service to determine what type of recognition may be run
on the DSP. e.g. If the DSP supports voice trigger only for the given keyphrase,
the voice interaction service may want to perform user identification at its end.

Also support keyphrase metadata for all keyphrases and locales.
In case the enrollment app supports open-ended keyphrases, it can leave the keyphrase text
to be empty
similarly, if the enrollment app supports all locales, it can leave the supported locales
attribute to be empty,

Change-Id: I782a17a877fc79ed569fa7c3a81697641182590b
oice/AlwaysOnHotwordDetector.java
7ee0d45835a897875f08fcc5412cfec76421b4aa 16-Jul-2014 Sandeep Siddhartha <sansid@google.com> Merge "Hook in startRecogniton call" into lmp-dev
8ecaf5f5cfd18e0436db1a27ccf46a063e9aacd7 11-Jul-2014 Sandeep Siddhartha <sansid@google.com> Hook in startRecogniton call

Add required info to the sound model database: users & recognition modes

Change-Id: I6e12cbc6342a2767c0e3d8328c0a3be899ac9952
oice/AlwaysOnHotwordDetector.java
oice/VoiceInteractionService.java
50806fc4ceff4bb093a18bdecb506163e68b9cbb 15-Jul-2014 John Spurlock <jspurlock@google.com> Zen: handle exit conditions across reboots.

- Use the persisted exit condition (and a new
persisted exit component) to immediately resubscribe
to the manual exit condition (if present)
- Fire false immediately for old countdown conditions.
- Add a new zen lens to noman dump, and a bit more info.
- Refresh the current exit condition when reopening the panel.

Bug:15844990
Bug:16212455
Change-Id: I8bfaf1b2a6cf3d8818002a9db5c527ad3aa4c05c
otification/ZenModeConfig.java
d3fdb8bed8e836786253f9cd5ab640c7c5ed8501 07-Jul-2014 Barnaby James <bjames@google.com> Add VoiceInteraction request type for successful actions.

Add CompleteVoiceRequest to VoiceInteractor to allow apps to indicate when a voice interaction was successfully completed.

Change-Id: I1481cfe96e9e2495d88a7a4fb62263bdd1e03c54
oice/VoiceInteractionSession.java
d7018200312e4e4dc3f67cf33dc90bf7ce585844 11-Jul-2014 Sandeep <sansid@google.com> Always on hotword changes

Add model management API skeleton to VoiceInteractionManagerService
Add an "interactor" for all always-on APIs

- The VoiceInteractionService will get an interactor for the given
keyphrase and locale.
- It can then check the availability and call methods to start and
stop recognition on this interactor.

- Add a common class to deal with SoundTrigger APIs

- Cleanup the keyphrase representation:
We now have separate representations for the keyphrase metadata and
a keyphrase being used for recognition.
This'll also help us to handle custom keyphrases in the
future easily.
This also ensures that for use within the framework,
we rely on the ID of the KeyphraseInfo rather than comparing the
text everytime.

Add a callback for the AlwaysOnHotwordDetector

This callback should be passed in by the VoiceInteractionService and is used to notify it
of recognition events.

Change-Id: I26252298773024f53a10cdd2af4404a4e6d74aae
oice/AlwaysOnHotwordDetector.java
oice/DspInfo.java
oice/KeyphraseEnrollmentInfo.java
oice/KeyphraseInfo.java
oice/SoundTriggerManager.java
oice/VoiceInteractionService.java
1d599da8424cef8d07cb4c533bd212d992d8f676 12-Jun-2014 Christoph Studer <chstuder@google.com> NotificationListenerService API: Avoid unnecessary allocations

Instead of producing Ranking objects, RankingMap just populates
them now, allowing developers to re-use objects and avoid
unnecessary allocations.

Also rename isInterceptedByDnd() to meetsInterruptionFilter(),
since DND is not a concept anymore.

Bug: 15415840
Bug: 16099064
Change-Id: If9861cbdf14593e641a4d4ffd1b967647eb8e2b8
otification/NotificationListenerService.java
otification/NotificationRankingUpdate.java
fccd37fb7ef6995c29ced0d2956e91dd84d7586f 09-Jul-2014 Yohei Yukawa <yukawa@google.com> Spans should be preserved in TextInfo whenever possible

This is a follow up CL for Ib58ece68dee4c6187d469049fca8c3.

Now SpellCheckerService is expected to store span information
in TextInfo whenever possible so that spell checker service
can use it later.

BUG: 15869548
Change-Id: I481a2efe359de6162ebe095f60506aba3db3d762
extservice/SpellCheckerService.java
68d4acd205e8c2da524e62734ca42847306cc029 02-Jul-2014 Andres Morales <anmorales@google.com> Service for reading and writing blocks to PST partition

Permits apps with permission
android.permission.ACCESS_PERSISTENT_PARTITION to obtain
a read and write data blocks to the PST partition.

Only one block ever exists at one time in PST. When
a client writes another block, the previous one is
overwritten.

This permits storing a block of data that will live
across factory resets.

Change-Id: I8f23df3531f3c0512118eb4b7530eff8a8e81c83
ersistentdata/IPersistentDataBlockService.aidl
ersistentdata/PersistentDataBlockManager.java
ae641c9ccd3f81214cee54a5f13804f1765187ad 01-Jul-2014 John Spurlock <jspurlock@google.com> Implement new volume UI design.

- Add segmented zen-mode picker to the rocker UI.
- Add a new "no interruptions" value to the zen setting.
- Implement expandable condition subpanel on the rocker UI.
- Remove the old circle&slash icons.
- Suppress alarm sounds if in "no interruptions" mode.
- Add warning re: alarms to the condition UI.
- Allow rocker UI to display over the keyguard.
- Remove Notifications QS tile.
- Realign volume rocker to the top of the screen.
- Add support for new "days" sleepMode.
- New icon policy rules for "volume" slot.
- New important icon (star).

Associated Settings change:
I6ed56791784968adfbd684f490dbbebed285a2dd

Bug:15831713
Change-Id: I35afe38646f04d2ba0dbac11c2c6356120a33694
otification/ZenModeConfig.java
fa10423fa00f3495e451016acba9b6848eb995c9 21-Jun-2014 Adrian Roos <roosa@google.com> Add stable insets for stable system windows

Adds a new kind of inset that only accounts for stable system
windows like the system or navigation bar.

Bug: 15457292
Change-Id: I681b711f6f40a94c25b7acd3a44eb3539486afab
allpaper/WallpaperService.java
6612727c18fe6e7b6edf811f3a1a871a710c0ebe 28-Jun-2014 John Spurlock <jspurlock@google.com> Doze: allow devices to opt-out of sigmotion trigger.

For devices with unreliable significant motion sensors, allow
the tease signal to be disabled via device config.

Also add doze state to dream service dumpsys.

Bug:15863249
Change-Id: I23eeec09c69cc3bd43b187e49555391ac0a99d9f
reams/DreamService.java
eb8d1be6acad180eabde84f19196b9ecaba81353 25-Jun-2014 John Spurlock <jspurlock@google.com> Add a BIND_DREAM_SERVICE signature-level permission.

Starting in api 21, will be required to bind to a
declared dream or doze service.

Also added to aapt dump badging output.

Bug:15862654
Change-Id: Ifa0a594eeecf21e6146176c7810a847e1d08fe3b
reams/DreamService.java
bf370992508c55d1f2493923bdc1834a0710e4ba 17-Jun-2014 John Spurlock <jspurlock@google.com> Create a basic doze dream in SystemUI.

The doze dream is not configured by default.

When configured, the doze dream does not show anything by default.
It teases a dark version of the keyguard (showing only the time
and notifications) when a notification arrives or significant motion
is detected.

Bug:15863249
Change-Id: Icfceb054d35d6fd4d9178eda7480e2464873ca4b
reams/DreamService.java
06e658f324a937bec1c5ddbe9c3100c3d2fec371 18-Jun-2014 Jim Miller <jaggies@google.com> Hide IFingerprintService and IFingerprintServiceReceiver

The @hide was being ignored because they were being used by the
constructor. Fixed by making the FingerprintManager constructor
hidden.

Change-Id: I3cd409df5055579f5004b08d00d5d951b8e5afd3
ingerprint/FingerprintManager.java
a7596147b43940cad3f76c53ed154ef088b9269b 07-Jun-2014 Jim Miller <jaggies@google.com> First pass at FingerprintService integration with HAL.
Move FingerprintService to framework services directory
Fix merge conflicts.

Tested: scanning, enrolling, removing.

Change-Id: I58b2b902cb671dc82cdaa54a195ba5f1a154622c
ingerprint/FingerprintManager.java
ingerprint/FingerprintManagerReceiver.java
ingerprint/FingerprintService.java
ingerprint/FingerprintUtils.java
ingerprint/IFingerprintService.aidl
ingerprint/IFingerprintServiceReceiver.aidl
05dc89bf3afeaab0cf6bec6fbeaab69c1c2cb73c 16-Jun-2014 Jay Civelli <jcivelli@google.com> Merge "Make sure TrustAgent applies trust if granted before it is bound."
4f22777efb6dc99b61c664b39b4087fe89f0c050 12-Jun-2014 Jay Civelli <jcivelli@google.com> Make sure TrustAgent applies trust if granted before it is bound.

Change-Id: Ibe704d162930e4bb6135fabccb15263935ced009
rust/TrustAgentService.java
069438d3febd8488db3f4ff23ce7da5ce68c328e 12-Jun-2014 Dan Sandler <dsandler@android.com> am 54c4c19b: Merge "NotificationListenerService: API updates" into lmp-preview-dev

* commit '54c4c19bc95e839cfce3d10f0e842ed5588391eb':
NotificationListenerService: API updates
f7a13df899c30ddddbbf63274bc28174f6391f29 11-Jun-2014 Sandeep Siddhartha <sansid@google.com> Add SoundTriggerManager to handle calls to SoundTrigger

- We are abstracting out the nitty-gritty details of the code that talks
to the SoundTrigger APIs as the
VoiceInteractionService is mostly interested in the "voice" related
aspects of the sound trigger APIs

Change-Id: I4a450033040280f2e67d06785d2b05a0e5cdc192
oice/DspInfo.java
oice/SoundTriggerManager.java
oice/VoiceInteractionService.java
22968950b814e66a6aa119ea92ae648884cbe0d9 10-Jun-2014 Sandeep Siddhartha <sansid@google.com> Activity for enrollment

- Make the enrollment attrs public
- Add a dummy activity for enrollment

- Manually tested that the meta-data is correctly read by the
VoiceInteractionService when the enrollment application is under
/system/priv-app

Change-Id: I36676ed8ffc919109031c26bac047d0c51a77e13
oice/KeyphraseEnrollmentInfo.java
oice/KeyphraseInfo.java
oice/VoiceInteractionService.java
e912ac012e7146e9b0e8589bd9d88790e55372e3 04-Jun-2014 Sandeep Siddhartha <sansid@google.com> Add capability APIs to VoiceInteractionService

The only API we currently need is one that tells us whether the system
is capable of running hotword detection for a given keyphrase+locale on
the hardware.

Also adds support in the KeyphraseEnrollmentInfo to provide an intent
for enrollment.

Change-Id: Iec102a4a94e7b161087b8d19785d761346e927c2
oice/DspInfo.java
oice/KeyphraseEnrollmentInfo.java
oice/KeyphraseInfo.java
oice/VoiceInteractionService.java
e5706787599f8397e19e66afa70753ba350cc91b 30-May-2014 Sandeep Siddhartha <sansid@google.com> Initial support for reading the enrollment metadata

- Defines schema for enrollment apps to publish metadata for the search
keyphrase. This metadata consists of an ID, a user visible keyphrase,
and the target package to handle the keyphrase, when it triggers.
- Reads the metadata and populates the KeyphraseInfo object for access via
the VoiceInteractionService
- Adds permission and intent action for the enrollment app.
The enrollment app needs to be a system app protected with the
MANAGE_VOICE_KEYPHRASES permission and the activity performing the
enrollment needs to handle the ACTION_MANAGE_VOICE_KEYPHRASES
- The keyphrase info currently stores an ID - that's for internal
bookkeeping only, a keyphrase text - that's used by the public APIs,
and a list of supported locales, which isn't exposed but is used while
indicating if hardware hotword is available for a particular keyphrase
in a language or not.

Change-Id: Ibe6c52a5a3eecfd74c4a8382713a35eb88d38df9
oice/KeyphraseEnrollmentInfo.java
oice/KeyphraseInfo.java
oice/VoiceInteractionService.java
d0694b6735a9d91794e6096961231e07364ba3fa 04-Jun-2014 Christoph Studer <chstuder@google.com> NotificationListenerService: API updates

Introduce RankingMap holding single notification Rankings
indexed by SBN keys.

Also, pass RankingMap with notification event callbacks so
subclasses don't have to call getCurrentRanking() unnecessarily.

Bug: 15415840
Change-Id: Id41e174f00c06c86359c03646abc3db78028b324
otification/NotificationListenerService.java
5c507c1371d273cdff61d2395d47bd54fa26d614 06-Jun-2014 Jeff Brown <jeffbrown@google.com> Rename PrivateApi annotation to SystemApi. (DO NOT MERGE)

Change-Id: I97b473884f81ad375d0733e4766afe091dfdd854
otification/NotificationListenerService.java
rust/TrustAgentService.java
d5a5b5a547462f3e7c6315a501909bce2418ba86 06-Jun-2014 Jeff Brown <jeffbrown@google.com> Rename PrivateApi annotation to SystemApi.

Change-Id: I97b473884f81ad375d0733e4766afe091dfdd854
otification/NotificationListenerService.java
2c1de5b052d8c8f3779f11dbb86820f6ee2f5372 21-May-2014 Jim Miller <jaggies@google.com> Hide the fingerprint API for now. DO NOT MERGE

Change-Id: I78aadf8d03be74eb862c5fe120fa544a2483553c
ingerprint/FingerprintManager.java
ingerprint/FingerprintManagerReceiver.java
b803ad3c2cefaba57063385ecab1be27dd2636b0 04-Jun-2014 Adrian Roos <roosa@google.com> Hide TrustAgentService in lmp-preview - DO NOT MERGE

Bug: 15287044
Change-Id: Iba0d53b87bcb4bddccec89cf943ed65491aa9d76
rust/TrustAgentService.java
1e9021aef89d53eb08d0e8a4e017c9e79d260241 04-Jun-2014 Adrian Roos <roosa@google.com> Merge "Ensure trust agents are only provided by platform packages" into lmp-preview-dev
856edebad73560e9b1cce021a7de9a0470d07176 02-Jun-2014 John Spurlock <jspurlock@google.com> Zen: Stateful condition panel.

When DND is on, expanded panel shows the current time
condition, or time remaining. The last time bucket
selected is remembered as the default option for the
next time.

Move the server-side countdown helper into a proper
condition provider, but register it in-process as a
system provider.

Move common countdown condition parsing into ZenModeConfig
to reuse from system components.

Keep the manual exit condition around in zen mode config
and add plumbing for getting / listening to the
controller.

Keep the last QS detail panel around instead of
recreating it every time.

Fix the time condition's plus and minus button
enabling logic, and enhance the click handler to
deal properly with the next or previous bucket.

Bug:15344758
Change-Id: Ie7018a1c20e20f6d7e5f9e7874188374e6f8e2ab
otification/ZenModeConfig.java
18ea893a2319e2a192188d2288bb881149c9b06e 28-May-2014 Adrian Roos <roosa@google.com> Ensure trust agents are only provided by platform packages

Prevents the TrustManagerService from binding to any non-platform
trust agents and updates the SampleTrustAgent to use the new
permission.

Bug: 15287044
Change-Id: I38c3deebd5ad359075e68f52d19417bab5ab43db
rust/TrustAgentService.java
725010a83f1798e5ba6edb93ca2656a96c29fcae 31-May-2014 Dianne Hackborn <hackbod@google.com> Merge "Clean up voice API." into lmp-preview-dev
a2c076d54048258cf88ab14551ce5fdf5a09c6e8 31-May-2014 Dianne Hackborn <hackbod@google.com> Clean up voice API.

Add various java docs.

Switch to CharSequence where appropriate.

Add new request for canceling voice interaction.

Also update test app to follow API changes and be more better.

Change-Id: If27eeba53cf6444660adb7d37ea2ce0557c6c91f
oice/VoiceInteractionSession.java
99f963ea04d7a86219ece00c356f3f6bce33b6d6 28-May-2014 Chris Wren <cwren@android.com> Add people signals to Zen mode.

Depends-On: I51fcf689ddbee7715e3387b865f18a715887c943
Change-Id: I7c91dec1afeb54505426c4da59ec4d072a60c240
otification/ZenModeConfig.java
20d94749043d0851f1da10c7749fd7eb13a35081 30-May-2014 Dianne Hackborn <hackbod@google.com> More work on voice interaction visuals.

There is now a special theme for voice interaction activities
to use, so they can be a panel that is better intergrated with
the rest of the voice interaction experience. This is still
not completely working, I have some hacks in the demo app to
get it right; I'll fix that in a future change.

Also improve VoiceInteractor to be retained across activity
instances, for things like rotation.

And bump up the number of concurrent broadcasts that are allowed
on non-svelte devices, since they can handle more and this makes
the boot experience better when dispatching BOOT_COMPLETED.

Change-Id: Ie86b5fd09b928da20d645ec2200577dee3e6889d
oice/VoiceInteractionSession.java
e30e02f5d9a9141c9ee70c712d4f9d52c88ea969 28-May-2014 Dianne Hackborn <hackbod@google.com> Add system layer for voice interaction services.

New window layer that voice interaction service windows
go in to. Includes a new voice-specific content rectangle
that voice activities are placed in to.

Add specific animations for this layer, sliding down from
the top (though this can be customized by the voice interaction
service).

Also add the concept of activities running for voice interaction
services for purposes of adjusting the animation used for them,
again sliding from the top, but not (yet?) customizable by the
voice interaction service.

Change-Id: Ic9e0e8c843c2e2972d6abb4087dce0019326155d
oice/VoiceInteractionSession.java
fb052926b84d69fdc4bebcb0373e33388c7bcbb7 21-May-2014 Dianne Hackborn <hackbod@google.com> Revert "Hide voice interaction APIs."

This reverts commit a677a9b9367bcf8c81c36dc59b53554cb347b438.
oice/package.html
cee44ba418bef83571349acb2d24ef29833502e0 20-May-2014 Christoph Studer <chstuder@google.com> Simplify NotificationListenerService API

Use ParceledListSlice to send the list of active notifications
from NoMan to NotificationListeners.

This allows us to simplify the API to what it was before
introducing the "String[] key" workaround for dealing with large
numbers of StatusBarNotifications.

While we're at it, rename Ranking.getIndexOfKey to something that
makes more sense.

Bug: 15126927
Change-Id: I02c2087978c6c4ec1198be496c6250a66143ecb3
otification/NotificationListenerService.java
430259a1d83446d9aac1c27f88bff923c14d9a8c 21-May-2014 Jim Miller <jaggies@google.com> Merge "Update FingerprintManager API after discussions."
05ad48206a082057e17723d32493c153faa6881e 16-May-2014 Christoph Studer <chstuder@google.com> Add ZEN and speedbump to NotificationListenerService

Change-Id: I39fae5d77863e0d10cf236a096cc589167d146d3
otification/INotificationListener.aidl
otification/NotificationListenerService.java
otification/NotificationOrderUpdate.aidl
otification/NotificationOrderUpdate.java
otification/NotificationRankingUpdate.aidl
otification/NotificationRankingUpdate.java
d08c2aceb238b02d8348518a2c87693054c6ce37 15-May-2014 Jim Miller <jaggies@google.com> Update FingerprintManager API after discussions.

Change-Id: I4d0b5ffc4d572f50961354ac37844c3cca7e5217
ingerprint/FingerprintManager.java
7643422fb69ec19c28df5ffd782a988e1c626b01 17-May-2014 Adrian Roos <roosa@google.com> Merge "Enforce that trust agents declare the BIND_TRUST_AGENT permission"
cb9fbc3a30b562a61e316af54fb0aa1d26ce0a73 16-May-2014 Adrian Roos <roosa@google.com> Enforce that trust agents declare the BIND_TRUST_AGENT permission

Change-Id: Iba10b6fb140362c368fb12b7d3c6be550897de40
rust/TrustAgentService.java
dcff99598f16737e75278e8ea9dbfe92579ea234 16-May-2014 Dianne Hackborn <hackbod@google.com> Hide voice interaction APIs.

Change-Id: I961b6399a6edca239caaba9bbd1dd5e03bc612bd
oice/package.html
1941fc718690d6b87db68b6a133c71fb470599d0 14-May-2014 Chris Wren <cwren@android.com> Extend NotificationListenerService to support system use cases.

Bug: 14846846
Change-Id: Ic308b2f78c86393304d446c57fd677294e01717c
otification/NotificationListenerService.java
7e03dfcb796ef1a6000a5fd5fda03c9e15ea62e1 16-May-2014 Adrian Roos <roosa@google.com> Apply revised TrustAgent API

Bug: 14997466
Change-Id: I81042e058a20f28603a11471882f3dcfc4f8b13c
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
f953664dc17dca23bd724bd64f89189c16c83263 17-Apr-2014 Chris Wren <cwren@android.com> notification ranking infrastructure

Added an ordered list of notifications (n.b. a complete ordering).
Added a mechanism for ranking to be updated asynchronously
Added onNotificationRankingUpdate to NotificationListeners
Added an opaque order update object and a convenience comparator that
uses it to sort notifications for listeners

Repurpose scorers to be ranking preprocessors. The preprocessors will
perform heavy-weight validation of the notification object and memoize
the results to improve efficiency of the ranking comparator.

Current internal comparator implements status quo ordering, except
that notes with a valid contact sort to the top of their priority
bucket.

Change-Id: I7244c65944a9657df41fb313b3cb5a52e149709d
otification/INotificationListener.aidl
otification/NotificationListenerService.java
otification/NotificationOrderUpdate.aidl
otification/NotificationOrderUpdate.java
08fa40c5cb5229b7969b2a5146855a337870f45a 30-Apr-2014 Jim Miller <jaggies@google.com> First pass at adding FingerprintManagerService

This adds a new service for monitoring and enrolling fingerprints
to the platform.

Fixed documentation links.

Change-Id: I66013be5e09be9c5f9746c46aacf32d3e26c3b73
ingerprint/FingerprintManager.java
ingerprint/FingerprintManagerReceiver.java
ingerprint/FingerprintService.java
ingerprint/FingerprintUtils.java
ingerprint/IFingerprintService.aidl
ingerprint/IFingerprintServiceReceiver.aidl
5f97930fc5dd44fcf1864acd53401c00b4de3a24 06-May-2014 Adam Powell <adamp@google.com> am c41fa708: am a0516e7a: Merge "onWindowDismissed API cleanup" into klp-modular-dev

* commit 'c41fa708271e204a7983aba291389ea1554227b2':
onWindowDismissed API cleanup
117b695222135cc684e891d4126116b97a64bc9e 06-May-2014 Adam Powell <adamp@google.com> onWindowDismissed API cleanup

Move the window swipe to dismiss plumbing off of Window.Callback into
its own internal interface implemented by Activity and Dialog. Make it
internal API instead of public. Apps should control this via the
window feature setting.

Change-Id: I64cd237fa7eab08719b2c34e31dac7d34f02563a
reams/DreamService.java
983ce97a5dd82688966e783a2c26f34550cfafa5 05-May-2014 Christoph Studer <chstuder@google.com> Merge changes Iffd15e95,Id2db95ec

* changes:
Log notification clicks
Add userId to StatusBarNotification key
c03c9167c2d9a1e22fb2b176b00a0524177fb037 02-May-2014 Dianne Hackborn <hackbod@google.com> Further work on voice interaction services.

This makes VoiceInteractionSession a more first-class
concept. Now the flow is that a VoiceInteractionService
calls startSession() when it wants to begin a session.
This will result in a new VoiceInteractionSession via the
VoiceInteractionSessionService containing it, and the
session at that point an decide what to do. It can now
show UI, and it is what has access to the startVoiceActivity
API.

Change-Id: Ie2b85b3020ef1206d3f44b335b128d064e8f9935
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
oice/VoiceInteractionSessionService.java
ef5693bb73ab90cc30ec9b11ee78f4351a36719a 02-May-2014 John Spurlock <jspurlock@google.com> Add additional display information to conditions.

Change-Id: Ic9a7cb29b573af84185371099e7ae220906cc89c
otification/Condition.java
3b98b3f1f85aff0c84ebef4dd497c146d1b4d248 01-May-2014 John Spurlock <jspurlock@google.com> Implement long-term condition subscriptions.

Bind long-term conditions (like "in a meeting") to enter/exit
zen mode automatically.

Persist automatic condition subscriptions to maintain them across
reboots.

Normalize condition state binding: true => enter zen, false => exit.

Change-Id: Icba2b8b25c0a352ae8215f4c0a324e4f966c0165
otification/Condition.java
otification/ZenModeConfig.java
ff8dbe52eb3452df4d2cbd7af90483969bb061f4 30-Apr-2014 Christoph Studer <chstuder@google.com> Add userId to StatusBarNotification key

Change-Id: Id2db95ec128b364c8a7df1272b2ee3144e3da3de
otification/StatusBarNotification.java
e86de4c0670550a29edae77ebb9f5c8ba5631231 30-Apr-2014 John Spurlock <jspurlock@google.com> Zen mode tweaks.

- Fix regression with alarms.
- Run all condition provider callbacks on the main thread.
- Exit zen mode if the current condition is disabled / uninstalled.

Bug:14402762
Change-Id: I0746670c1910047a9dc9b7e29aa1a6c3899fd9fe
otification/ConditionProviderService.java
18f0d357f9693fe787a3e3777d8fdf01357a6e3f 26-Apr-2014 Dianne Hackborn <hackbod@google.com> Rework some of the voice interaction APIs.

On the app side, requests are now composed by subclassing
from various types of Request objects.

On the service side, starting a voice interaction session
involves starting another service that will then manage the
session. This leads the service design much more to what
we want, where the long-running main service is very tiny
and all the heavy-weight transient session work is elsewhere
in another process.

Change-Id: I46c074c6fe27b6c1cf2583c6d216aed1de2f1143
oice/IVoiceInteractionSessionService.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionServiceInfo.java
oice/VoiceInteractionSession.java
oice/VoiceInteractionSessionService.java
01c70711d5e4f1c3405bcd169be70605e92166f2 28-Apr-2014 Chris Wren <cwren@android.com> Merge "Remove opPkg from the notification key."
e6345b5194b89b46ba28dfcea9e2e0699c0705ba 28-Apr-2014 Chris Wren <cwren@android.com> Remove opPkg from the notification key.

Change-Id: Iadff2dbeb3c9ec69837d3b6e763f24d687ee368b
otification/StatusBarNotification.java
1c923a386ee4d8c31cc289f8628b8fc46bf08e86 27-Apr-2014 John Spurlock <jspurlock@google.com> Force condition provider unsubscribe when exiting zen mode.

Bug:13743109
Change-Id: I3c205067498a86e2862a0c545bc38e41682693d5
otification/ConditionProviderService.java
e77bb36d48b6b8b5c3bb6a1195aca469bb237919 26-Apr-2014 John Spurlock <jspurlock@google.com> Wire up condition providers to zen mode exit triggers.

Bug:13743109
Change-Id: I4e45d7050d1f9aaa379f46379a3203e61e216a3d
otification/Condition.java
otification/ConditionProviderService.java
otification/IConditionListener.aidl
otification/IConditionProvider.aidl
b22aabbbd2801db0be526a64badf2efa208f19f1 25-Apr-2014 John Spurlock <jspurlock@google.com> Merge "Introduce condition provider services."
7340fc8665ae3f9f1978f42aa0e5e1da85036158 25-Apr-2014 John Spurlock <jspurlock@google.com> Introduce condition provider services.

Add the condition provider interface, base class, and associated
system metadata.

Pull out common service management code into a reusable helper,
used by notification listeners and condition providers. The
helper, ManagedServices, is now completely self-contained - it
has no dependencies on NoMan or NoMan abstractions.

Bug:13743109
Change-Id: I6856d40f0a2ead78ac9b5707568559a57e7eb009
otification/Condition.aidl
otification/Condition.java
otification/ConditionProviderService.java
otification/IConditionProvider.aidl
91097de49b0f683b00e26a75dbc0ac6082344137 05-Apr-2014 Dianne Hackborn <hackbod@google.com> Initial implementation of new voice interaction API.

This gives a basic working implementation of a persist
running service that can start a voice interaction when
it wants, with the target activity(s) able to go through
the protocol to interact with it. It may even work when
the screen is off by putting the activity manager in the
correct state to act like the screen is on.

Includes a sample app that is a voice interation service
and also has an activity it can launch.

Now that I have this initial implementation, I think I
want to rework some aspects of the API.

Change-Id: I7646d0af8fb4ac768c63a18fe3de43f8091f60e9
oice/IVoiceInteractionService.aidl
oice/IVoiceInteractionSession.aidl
oice/VoiceInteractionService.java
oice/VoiceInteractionSession.java
056c519df1dfb8fdc57daddfdf09bc0e1ffddac4 21-Apr-2014 John Spurlock <jspurlock@google.com> Do not disturb: persist user config.

Load and store user configuration for do not disturb. Separate
out service-related aspects into new helper. Make config availble
over NoMan for settings.

Implement phone + message based filtering (package whitelist for now).

Implement automatic enter/exit zen mode overnight scheduler.

Bug:14211946
Change-Id: Ib28aab0e4c5c9a5fd0b950b2884b1ab618fdfeca
otification/ZenModeConfig.aidl
otification/ZenModeConfig.java
8fd7f1ed7c11d35b3f2a97878e68ee38a551dd15 11-Apr-2014 Christoph Studer <chstuder@google.com> Rename basePkg to opPkg

...and actually populate the field correctly.

Change-Id: I3ce52efedb919d6af75dc9c3532e47764c467cac
otification/StatusBarNotification.java
4e5c089ef3e62e7f658e71c0be262d09bd3e399b 11-Apr-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 337e764d to master

Change-Id: I8168dbf42b68c2f7b5ccb300e0080dddc627af26
037c33eae74bee2774897d969d48947f9abe254f 09-Apr-2014 Jeff Brown <jeffbrown@google.com> 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
reams/DreamService.java
a263e4e438746f91fb78857bd569ba4f796a346d 03-Mar-2014 Kenny Guy <kennyguy@google.com> Pipe notifications from related users to listeners.

For Listeners built against L or greater
Send notifications from related users to listeners.
Return notifications from related users getAllActiveNotifications
Cancel notifications from related users in cancelAllNotifications
Deprecate StatusBarNotification.getUserId() and expose getUser()
as APIs should use UserHandles.
Deprecate cancelNotification that takes package, id and tag
in favour of one that takes key.

Fix bug that notifications from related users didn't
trigger sounds.

Change-Id: I1b1c20c9f305b8f3c4047bc5720d8e99cdedfe70
otification/NotificationListenerService.java
otification/StatusBarNotification.java
10a5ec230f41fcfba7bdd0acb32f7bb113eba3da 03-Apr-2014 Jeff Brown <jeffbrown@google.com> am c2cebee6: am 8db6d9af: Merge "Clean up certain state transitions in DreamService." into klp-modular-dev

* commit 'c2cebee67a2dafe850e39b2ae3bc8b2f44426901':
Clean up certain state transitions in DreamService.
344812d2f3a9e56cc53a86a8825fb73b16d3c0dd 03-Apr-2014 Jeff Brown <jeffbrown@google.com> Clean up certain state transitions in DreamService.

Instead of posting onDreamingStarted() to a handler from attach(), do
the work immediately. This ensures that the dream is actually in the
expected state when the callback runs. Previously it was possible
for the callback to run after detach() occurred which could cause
exceptions and unexpected behavior. As it happens, there's no need
to post this callback since attach() already runs on the UI thread.

Handle certain races involving the window token lifecycle a little
better. When the dream manager shuts down a dream, it removes the
window token. This can happen before the dream completes its attach()
phase in which case a BadTokenException is thrown. We now handle this
exception and abort the dream in anticipation of receiving a request
to finish it immediately.

Add a safeguard to getDozeHardware() to handle the case where it
might inadvertently be called at the wrong point in the lifecycle.

Bug: 13475612
Bug: 13760290
Change-Id: I9bc9c154370d08d7727b568d398c460a38592099
reams/DreamService.java
ff2144ccb4215acf4587fc628493b3d49dca6043 28-Mar-2014 Adrian Roos <roosa@google.com> Define initial trust agent API

Adds the minimal API needed to define a useful trust agent.

Bug: 13723878
Change-Id: Ib24440bab7b16d0b656bde8b059e7d42cab2c7dc
rust/ITrustAgentService.aidl
rust/ITrustAgentServiceCallback.aidl
rust/TrustAgentService.java
5579ec33eb317a19ad80929169b2b329b147d98b 28-Mar-2014 John Spurlock <jspurlock@google.com> DO NOT MERGE Enhance the NotificationListenerService api.

Add to NotificationListenerService:
- getActiveNotificationKeys() : String[]
- getActiveNotifications(String[] keys) : StatusBarNotification[]
- cancelNotifications(String[] keys) : void
- onListenerConnected(String[] keys) : void

Add to StatusBarNotification:
- getKey() : String

Bug:13562828
Change-Id: I9da222cb4af22864bc0ecdecc3f121bced0723d6
otification/INotificationListener.aidl
otification/NotificationListenerService.java
otification/StatusBarNotification.java
a4294297d46cc0b9f45897bc688c267502cce3ef 24-Mar-2014 John Spurlock <jspurlock@google.com> Enhance the NotificationListenerService api.

Add to NotificationListenerService:
- getActiveNotificationKeys() : String[]
- getActiveNotifications(String[] keys) : StatusBarNotification[]
- cancelNotifications(String[] keys) : void
- onListenerConnected(String[] keys) : void

Add to StatusBarNotification:
- getKey() : String

Bug:13562828
Change-Id: Idd9605dad8f942d68b4b32ab9625faf6c8642db9
otification/INotificationListener.aidl
otification/NotificationListenerService.java
otification/StatusBarNotification.java
568628dc2cb92b3ec3a87cae9de3203fbdc5968c 05-Mar-2014 Will Haldean Brown <haldean@google.com> Manually merge commit '2faf28cf' into master

Original commit message:

Add swipe-to-dismiss support to PhoneWindow.

This adds a new window feature -- FEATURE_SWIPE_TO_DISMISS -- and a
theme attribute to activate that feature. When the feature is
activated, a SwipeDismissLayout is inflated as the DecorView layout.
SwipeDismissLayout intercepts touch events and steals ones that are
large swipes to the right if its children don't. PhoneWindow
registers handlers that listen for these swipe events, translate the
window when necessary, and finish the activity at the end of the
gesture.

Conflicts:
core/java/android/view/Window.java
core/res/res/values/attrs.xml

Change-Id: I943290b436864ca4a1bd401b88d696e08c921cdd
ca6234e084a71e0c968cff404620298bcd971fcc 12-Feb-2014 Will Haldean Brown <haldean@google.com> Add swipe-to-dismiss support to PhoneWindow.

This adds a new window feature -- FEATURE_SWIPE_TO_DISMISS -- and a
theme attribute to activate that feature. When the feature is
activated, a SwipeDismissLayout is inflated as the DecorView layout.
SwipeDismissLayout intercepts touch events and steals ones that are
large swipes to the right if its children don't. PhoneWindow registers
handlers that listen for these swipe events, translate the window when
necessary, and finish the activity at the end of the gesture.

Change-Id: I512e758f3c3ffd3b353dba3b911c0e80a88d6f5f
reams/DreamService.java
10102e4c0e501333a12b38a5cfe709d1558d84dd 21-Feb-2014 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of baaa080b to master

Change-Id: I3ee12321e298f7a2ea577a99f30c49f3bb497fae
2687550272ba061448f5d5b914700dc335299ee7 31-Jan-2014 Jeff Brown <jeffbrown@google.com> 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
reams/DozeHardware.java
reams/DreamManagerInternal.java
reams/DreamService.java
reams/IDozeHardware.aidl
reams/IDreamManager.aidl
reams/IDreamService.aidl
88aaef71289177644f723d3d0f20f34a6f9b3d2c 14-Feb-2014 Jeff Brown <jeffbrown@google.com> am ce0552f3: am 8a4c2bb1: am 567f7ca4: Refactor dream manager to new pattern.

* commit 'ce0552f360d8c8f0bc45095293be369800ce9c93':
Refactor dream manager to new pattern.
567f7ca424280ae957b04d4f3df690055f2d41df 31-Jan-2014 Jeff Brown <jeffbrown@google.com> Refactor dream manager to new pattern.

Change-Id: I99ab4bd98d56a290368dc4b24e5bb24e0656b522
reams/DreamManagerInternal.java
c4aee98a62f400dd9f6f964d26d739d409212775 12-Feb-2014 John Spurlock <jspurlock@google.com> Improve error handling in listener services.

Check explicitly for null listeners in NMS, throwing
IllegalArgumentException (on the small list of exceptions
that survive RPC boundaries) with a message.

Normally this situation is caused by listeners that attempt to
perform NM-related actions before they are bound. Check for
this case in the base NLS class and avoid the call to NM if we
know it will fail.

Although it's tempting to throw an IllegalStateException on the
client side, preserve the existing semantics for backwards-compatibility
purposes. That is, silently fail (or return null) - and provide a
log warning.

Bug:12805707
Change-Id: I0d92fd0d460a8592e8a23fd8fd718ae2ba3bd4c7
otification/NotificationListenerService.java
da9a3bed8e1aa7d7867291a123466bb0a3be5bb0 12-Feb-2014 John Spurlock <jspurlock@google.com> Improve error handling in listener services.

Check explicitly for null listeners in NMS, throwing
IllegalArgumentException (on the small list of exceptions
that survive RPC boundaries) with a message.

Normally this situation is caused by listeners that attempt to
perform NM-related actions before they are bound. Check for
this case in the base NLS class and avoid the call to NM if we
know it will fail.

Although it's tempting to throw an IllegalStateException on the
client side, preserve the existing semantics for backwards-compatibility
purposes. That is, silently fail (or return null) - and provide a
log warning.

Bug:12805707
Change-Id: I0d92fd0d460a8592e8a23fd8fd718ae2ba3bd4c7
otification/NotificationListenerService.java
6090995951c6e2e4dcf38102f01793f8a94166e1 19-Nov-2013 John Spurlock <jspurlock@google.com> Remove unused imports from frameworks/base.

Change-Id: Ia1f99bd2c1105b0b0f70aa614f1f4a67b2840906
extservice/SpellCheckerService.java
allpaper/WallpaperService.java
a381d375f37fa8fb4c606a5ba9b3e105f6e1ef1c 26-Jul-2013 John Spurlock <jspurlock@google.com> StatusBarNotification cleanup.

Remove obsolete ctor and obsolete accessor comment.

Change-Id: Ib72abc8fbd2a5f9a1b82da986094667f39e0bf62
otification/StatusBarNotification.java
c133ab8258f8e976f402d57456b1f06d11a78b03 10-Jun-2013 John Spurlock <jspurlock@google.com> Log errors found in notification listener callbacks.

Otherwise, exceptions thrown inside listener callbacks are
not logged at all.

Change-Id: Iaef28e06abc4d6caf66051725e14a17ac954173e
otification/NotificationListenerService.java
26510320646339fc59e01d392f96efeeac6d91dd 23-May-2013 Scott Main <smain@google.com> fix javadoc links.
turns out, without parameters, javadoc will link to the best matching
method signature, even if it's from the superclass. So these were pointing
to Object.nofify()

Change-Id: I13688f2b65e898d1f000a34c88d0aaed928884b5
otification/StatusBarNotification.java
04667dae3a5e45257c12d11dbcb4fc353a18d842 26-Apr-2013 Scott Main <smain@google.com> fix javadoc build
also add some docs to the service

Change-Id: I712710de403bc000c0a69a2de726bace6e7873bd
otification/NotificationListenerService.java
4f91efdf421e354ee2033ed640e4150cf0cef21b 25-Apr-2013 Daniel Sandler <dsandler@android.com> API: getPkg() -> getPackageName()

Bug: 8656860
Change-Id: If3062b9fc00270e5f0ecfe67e593b9a28c6bccdd
otification/StatusBarNotification.java
e6f7f2e3a01b8deb00e03ccfa93751c315f14ef0 25-Apr-2013 Daniel Sandler <dsandler@android.com> API cleanup: NotificationListener

- Wrap all public member variables in getters and make
slots private
- Rename clear* methods to cancel* to be more consistent
with existing public Notification API

Bug: 8656860
Change-Id: I84f7e71fbb627f859352a93089c6a531b44dac95
otification/NotificationListenerService.java
otification/StatusBarNotification.java
25cf8cee6f304a286d321204e448b18ce733a60c 24-Apr-2013 Daniel Sandler <dsandler@android.com> New NotificationListener API: getActiveNotifications()

This allows a listener service to catch up on the current
state of the notification panel at any time, including at
startup.

Bug: 8656860
Change-Id: I1a3d665d84576e17870929a63dda334afc696010
otification/NotificationListenerService.java
1a497d3a2b1496c12949e47e55f8e46d8f585be5 18-Apr-2013 Daniel Sandler <dsandler@android.com> Fix concurrency issues when parceling StatusBarNotifications.

Protip: Don't mess with Bundles after you've sent them off
for parceling in an RPC.

Note that this change reduces the payload size of
StatusBarNotification objects received in
onNotificationRemoved() callbacks; it scrubs out the
RemoteViews and Bitmaps just as the NoMan's internal archive
does. [You don't really need that information anyway when
hearing about a removed notification; most likely all you
need are the other slots on StatusBarNotification, but
nulling the whole Notification object breaks a lot of
clients.]

Bug: 8616295
Change-Id: Ic899045f2352b96dcf064d3e9e51dad52629aea3
otification/NotificationListenerService.java
otification/StatusBarNotification.java
3a2854bcee08e3af3ca1b042c1fef6ca68f8c70a 09-Apr-2013 Jeff Brown <jeffbrown@google.com> Merge "Queues, queues, queues and input." into jb-mr2-dev
f9e989d5f09e72f5c9a59d713521f37d3fdd93dd 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Queues, queues, queues and input.

Redesigned how ViewRootImpl delivers input events to views,
the IME and to native activities to fix several issues.

The prior change to make IME input event delegation use
InputChannels failed to take into account that InputMethodManager
is a singleton attached to the main looper whereas UI may be
attached to any looper. Consequently interactions with the
InputChannel might occur on the wrong thread. Fixed this
problem by checking the current thread and posting input
events or callbacks to the correct looper when necessary.

NativeActivity has also been broken for a while because the
default event handling logic for joysticks and touch navigation
was unable to dispatch events back into the native activity.
In particular, this meant that DPad synthesis from touch navigation
would not work in any native activity. The plan is to fix
this problem by passing all events through ViewRootImpl as usual
then forwarding them to native activity as needed. This should
greatly simplify IME pre-dispatch and system key handling
and make everything more robust overall.

Fixed issues related to when input events are synthesized.
In particular, added a more robust mechanism to ensure that
synthetic events are canceled appropriately when we discover
that events are no longer being resynthesized (because the
application or IME is handling or dropping them).

The new design is structured as a pipeline with a chain of
responsibility consisting of InputStage objects. Each InputStage
is responsible for some part of handling each input event
such as dispatching to the view hierarchy or to the IME.
As a stage processes an input event, it has the option of
finishing the event, forwarding the event to the next stage
or handling the event asynchronously. Some queueing logic
takes care to ensure that events are forwarded downstream in
the correct order even if they are handled out of order
by a given stage.

Cleaned up the InputMethodManager singleton initialization logic
to make it clearer that it must be attached to the main looper.
We don't actually need to pass this looper around.

Deleted the LatencyTimer class since no one uses it and we have
better ways of measuring latency these days using systrace.

Added a hidden helper to Looper to determine whether the current
thread is the indicated Looper thread.

Note: NativeActivity's IME dispatch is broken by this patch.
This will be fixed later in another patch.

Bug: 8473020
Change-Id: Iac2a1277545195a7a0137bbbdf04514c29165c60
allpaper/WallpaperService.java
5feceebb892d4cb5777cea3c6174b206705d456b 23-Mar-2013 Daniel Sandler <dsandler@android.com> New NotificationListenerService.

This is the best and only way for apps to listen for
notifications: create a NotificationListenerService, wait
for the NoMan to bind to you (as a result of the user
checking a box somewhere in Settings and agreeing to a
scary dialog box), and you'll start receiving notification
posted and dismissed callbacks. Your service, while enabled,
will also be able to clear one or all notifications.

Use this power wisely.

This change moves StatusBarNotification out of
com.android.internal into android.service.notification.
[Internal customers, including System UI and early users of
the system-only listener binder API, will need to be
updated.]

Bug: 8199624
Change-Id: I1be46f823d4b3ddc901109ec1e085cd6deb740c2
otification/INotificationListener.aidl
otification/NotificationListenerService.java
otification/StatusBarNotification.aidl
otification/StatusBarNotification.java
c4aad01cbbb69c916ef323693e1fd0560b0eccba 23-Feb-2013 Dianne Hackborn <hackbod@google.com> Formalize overscan metrics.

The window manager now maintains and reports a new formal
"overscan insets" for each window, much like the existing
content and visible insets. This is used to correctly
position the various UI elements in the various combination
of layout options. In particular, this allows us to have
an activity that is using fitSystemWindows to have the content
of its UI extend out to the visible content part of the screen
while still positioning its fixed UI elements inside the
standard content rect (and the entire window extending all
the way into the overscan area to fill the screen as desired).

Okay, maybe that is not written so clearly. Well, it made
my head hurt too, so suffer!

The key thing is that windows now need to know about three
rectangles: the overall rectangle of the window, the rectangle
inside of the overscan area, and the rectangle inside of the
content area. The FLAG_LAYOUT_IN_OVERSCAN option controls
whether the second rectangle is pushed out to fill the entire
overscan area.

Also did some improvements to debug dumping in the window
manager.

Change-Id: Ib2368c4aff5709d00662c799507c37b6826929fd
allpaper/WallpaperService.java
b84b9c21919a067ee989f70667c1cfa2f817c46e 11-Dec-2012 Mita Yun <mitayun@google.com> am 81f82d29: am aa8dc2ee: Removed mCallbackLooper from WallpaperService

* commit '81f82d29ed3c93704c4fa0cbfeb48a675b71c349':
Removed mCallbackLooper from WallpaperService
aa8dc2ee18c15a5c7fb897d2f41116950fd30fe6 11-Dec-2012 Mita Yun <mitayun@google.com> Removed mCallbackLooper from WallpaperService

Change-Id: Icb060a9225dbe7e848bbe80e6a9ab28fcfb59969
allpaper/WallpaperService.java
d44280e28884085f014806d53413ec5a68d0ac25 11-Dec-2012 Mita Yun <mitayun@google.com> resolved conflicts for merge of ebcbfb3f to master

Change-Id: I0658dd4a1418fbad91d9663e5b52418a979dc683
ed218c706d9e91e75b94c448cee2e6150aaee57f 07-Dec-2012 Mita Yun <mitayun@google.com> Use asynchronous messages for input method events.

Improves the throughput of IME event handling by ensuring that
input events do not get serialized behind UI traversal and
drawing messages such as when the UI is animating.

Added support for creating an asynchronous Handler as part of a
HandlerCaller. It turns out we should be using an asynchronous
Handler not only in IME dispatch but also in accessibility and
wallpaper events where HandlerCaller is used. So fixed those
services to also use an asynchronous Handler.

Change-Id: I0b19140c9d5ca6ee300c1a150c48312fd55ed8eb
allpaper/WallpaperService.java
ce4a9a34b68ab04ab176d59e7562f520d0267b79 28-Nov-2012 Scott Main <smain@google.com> am 33a8b28f: am 1cc041f7: am 7538ff09: am 35473e6e: Merge "docs: update dreamservice description" into jb-mr1-dev

* commit '33a8b28f04ae689f3d5e24ef46df1dea76be602b':
docs: update dreamservice description
6c9a1a1004f224e771139aec6fd2058aa6bdccbd 19-Nov-2012 Scott Main <smain@google.com> docs: update dreamservice description

Change-Id: I7e7295a3d67ca1760ba52b3958bf91540692e542
reams/DreamService.java
b1ef36965bf17e791afd16a9a34bcbb32f495f68 17-Nov-2012 Craig Mautner <cmautner@google.com> Refactor unused methods and unnecessary members.

ImageWallpaper runs on the main thread now and doesn't need to add
callbacks on different threads or lock against concurrent access.

Bug 7326921 fixed.

Change-Id: I6097e1dff8af743a4fb81b697efee0e02667125b
allpaper/WallpaperService.java
ed108f3d125b0a4cc465057e3514caf781cdea19 18-Oct-2012 John Spurlock <jspurlock@google.com> Frameworks base: Promote dream setting defaults to config.

So that:
- the values can be shared (to fix assoc bug)
- the values can be customized in product overlays

Bug:7373284
Change-Id: I37f037082523a3d975f6014f36afa28c60117372
reams/Sandman.java
6237ac19bf4eed261e8b0c69fac774581b4ea02b 09-Oct-2012 Scott Main <smain@google.com> improve some docs for dreams

Change-Id: I7652f4366cdc8c40926d7961582663cc99ca0735
reams/DreamService.java
4a01f2b5dcb5bcb72358905db402731013195cfd 15-Oct-2012 Chris Wren <cwren@android.com> Merge "delay onDreamingStarted() to work around asynchrony." into jb-mr1-dev
f434d23a16b34e7815049db29bbcd0cd8a4e4862 11-Oct-2012 Chris Wren <cwren@android.com> delay onDreamingStarted() to work around asynchrony.

Bug: 7328682
Change-Id: I86144b0b34eade332543244bb3aff5f9695ff7f7
reams/DreamService.java
11159e9a785a143c9f3765bdf5a5ccfd77842d7a 12-Oct-2012 Jeff Brown <jeffbrown@google.com> Do not launch Somnambulator as a dock app.

Fixes a black flash that occurred when the device was docked
because the UiModeManagerService was launching the Somnambulator
to start the dream when docked. This caused an unnecessary
activity transition and could in fact make dreaming less
reliable than if the UiModeManagerService started the dream itself.

Moved common code from UiModeManagerService and Somnambulator
to Sandman to ensure it is kept in sync.

Bug: 7328545
Change-Id: I46102784e2ab1acc0241d43a48abf0581278af24
reams/Sandman.java
6918d9f970989f1e5ca5a03b04d10a4c890721e9 11-Oct-2012 Daniel Sandler <dsandler@android.com> Merge "Remove Dream windows immediately." into jb-mr1-dev
c13107046acfcda7e3402a56a617818b7e77e1b8 10-Oct-2012 Daniel Sandler <dsandler@android.com> Remove Dream windows immediately.

Ensures that onDetachedFromWindow happens before onDestroy.

Bug: 7295929
Change-Id: Ic4ac2552bfce75a5dc43dc840e6ef0182369e24b
reams/DreamService.java
a934fd142ec59b297b31c1f0b664e0c0d5e61eba 09-Oct-2012 Chris Wren <cwren@android.com> default the screen on during the dream.

Bug: 7295909
Change-Id: Ic629bd08bdade8dba2b92124c56cab1bb438bec2
reams/DreamService.java
4c1e3183baf39ab69c0289c1511877a8bb0b0f75 06-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7296314, issue #7296314.

7296314 Crashing dreams are stuck
7296510 Transition from lock screen to dreaming is really bad

The window layer for dreams is now moved down below the keyguard,
so that some of the expected stuff like crash and ANR dialogs can
be seen on top of them. While doing this, I reorganized how we
define the layers so the constants are just in the switch statement,
so it is much less crazy-making trying to read how things go
together.

We now have some special cases for when a dream is being shown
to turn off its animation if the keyguard is currently shown.
Since we know it will be hiding the keyguard we need it to be
shown immediately so that you don't see whatever is behind it.

Cleaned up some handling of when the lock screen is displayed
while a FLAG_SHOW_WHEN_LOCKED window is displayed, so that the
lockscreen doesn't transiently get shown and mess up the fullscreen
or system UI state. This also fixes problems with any normal
activity that is doing this.

Hid the methods on DreamService for setting lights out mode. It
doesn't make sense to have such methods on DreamService, because
you can just as well do that on your own View that is showing the
dream content, and when you can do that you can fully participate
in the (required) interactions about it such as being told when
the mode goes away.

The DreamService method for going fullscreen now uses the window
flag for doing this, which is what you want, because you want this
state to persistent on that window and not get knocked out if
something above the window tickles the system UI state.

Also fixed the problem where dreams that hid the status bar would
have a jerky animation when going away, since they were causing the
activity behind them to be layed out without the lock screen. This
is a kind-of ugly special case in the window manager right now to
just not layout windows that are behind a dream. Good enough for MR1.

Change-Id: Ied2ab86ae068b1db0ff5973882f6d17b515edbcd
reams/DreamService.java
7ef38ea9e5ee1d2fd58e818f37191a589793e236 05-Oct-2012 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #7275122: Wall paper jank when switching users" into jb-mr1-dev
bce0cbb40d060f71a7de86d5668eb690e7073c19 05-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7275122: Wall paper jank when switching users

Change-Id: I2677c7641a01b4afe89db29cb5fc1af876f9d078
allpaper/WallpaperService.java
2d78490292090eeab84694330978c9ad7fad2d37 04-Oct-2012 Daniel Sandler <dsandler@android.com> DreamService API revisions.

Reduce reliance on Service interface overrides, instead
steering clients to the DreamService-specific lifecycle
hooks:

onAttachedToWindow .. onDreamingStarted ..
onDreamingStopped .. onDetachedFromWindow

The old Dream.java is finally gone now too.

Bug: 7281802
Change-Id: Ib7802c3397fde60ad1132fa49831da182eef4d7a
reams/Dream.java
reams/DreamService.java
reams/IDreamService.aidl
3a4d41a654bf00972da9013854ba0e15b2c01fe9 01-Oct-2012 John Spurlock <jspurlock@google.com> Update javadocs for DreamService.

Reflect the new intent-filter protocol, and add a bit about <dream>.
Also escape xml so it's visible in generated html.

Bug:7256474
Change-Id: Id270eeb70601b492458834f19216801b428af4cb
reams/DreamService.java
be87e2f5885b28145a788fd31d1fb5ae88a71100 29-Sep-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7255954: API Review: rename Dream to DreamService

Change-Id: I89ecf2c3ec4fef09c0495aa68de11576f9cfd872
reams/Dream.java
reams/DreamService.java
62c82e4d92cc0b856059f905d81885f7808a0e7d 26-Sep-2012 Jeff Brown <jeffbrown@google.com> Make DreamManagerService more robust.

Clearly isolated the DreamManagerService and DreamController
responsibilities. DreamManagerService contains just enough logic to
manage the global synchronous behaviors. All of the asynchronous
behaviors are in DreamController.

Added a new PowerManager function called nap() to request the device
to start napping. If it is a good time to nap, then the
PowerManagerService will call startDream() on the DreamManagerService
to start dreaming.

Fixed a possible multi-user issue by explicitly tracking for
which user a dream service is being started and stopping dreams
when the current user changes. The user id is also passed to
bindService() to ensure that the dream has the right environment.

Fix interactions with docks and the UI mode manager. It is
important that we always send the ACTION_DOCK_EVENT broadcast
to the system so that it can configure audio routing and the like.
When docked, the UI mode manager starts a dock app if there is
one, otherwise it starts a dream.

This change resolves issues with dreams started for reasons other
than a user activity timeout.

Bug: 7204211
Change-Id: I3193cc8190982c0836319176fa2e9c4dcad9c01f
reams/Dream.java
reams/IDreamManager.aidl
f41f505fac0ba31159d3cdba3ca9e0c00bc3fe9b 26-Sep-2012 John Spurlock <jspurlock@google.com> Dream metadata now specified using an xml-resource.

Removed old metadata key for dream settings activity, now defined in attrs.xml.

Also took this opportunity to remove Dream#lightsOut.

Bug:7172816
Bug:7211867
Change-Id: Ied18a527d2dc2aacc19d7a9543f090653232f0ed
reams/Dream.java
5e416d88032a8f79a20a8052187ee8f24d8c9c02 21-Sep-2012 John Spurlock <jspurlock@google.com> Fix javadocs to fix build.

Change-Id: I6d7d63b9322f225124f722a245c1222540afbff4
reams/Dream.java
d5c582c494deac518c85682dc28728c2fadae8da 21-Sep-2012 John Spurlock <jspurlock@google.com> Additions to Dream public api.

- lightsOut() -> setLightsOut(boolean)
(deprecated lightsOut, will remove once all baked-in dreams are updated)
- Added ability to keep the screen bright (default = false).
- Lights out is now true by default.
- Consistent setters(setXxx) + getters(isXxx) for
interactive, lightsOut, fullscreen, and screenBright dream attributes.
Can set attributes at any time (even before window is created).
- Fleshed out javadocs for public api.
- Reordered things a bit.
- Added example of manifest dream declaration ready for copypasta.
- Removed unused action constant, added category constant.

Bug:7172816
Bug:7111868
Change-Id: I721db7a1a5e5ad047a3723b4d5141ef53b0970af
reams/Dream.java
f4f6b4c8b0fcf77d46567f13b409255948fe107b 25-Aug-2012 John Spurlock <jspurlock@google.com> Fire "dreaming started" and "dreaming stopped" broadcasts.

Dream manager now fires broadcast intents when entering + exiting
dreamland (except when testing).

Power manager can now listen for dreams ending, using polling only
as a backstop.

Also:
- Bullet-proof dream-manager/dream against known failure modes
- Add new read/write dream permissions
- Refactor dream-manager to delegate work + state management into
a new DreamController class, via a handler

Bug:6999949
Bug:7152024
Change-Id: I986bb7812209d8c95ae1d660a5eee5998a7b08b1
reams/Dream.java
reams/DreamManagerService.java
reams/IDreamManager.aidl
5dc5a00e7ebadc085ded7e29feacd17e53698486 16-Sep-2012 Dianne Hackborn <hackbod@google.com> More multi-user stuff.

- New public APIs to find out when a user goes to the foreground,
background, and is first initializing.
- New activity manager callback to be involved in the user switch
process, allowing other services to let it know when it is safe
to stop freezing the screen.
- Wallpaper service now implements this to handle its user switch,
telling the activity manager when it is done. (Currently this is
only handling the old wallpaper going away, we need a little more
work to correctly wait for the new wallpaper to get added.)
- Lock screen now implements the callback to do its user switch. It
also now locks itself when this happens, instead of relying on
some other entity making sure it is locked.
- Pre-boot broadcasts now go to all users.
- WallpaperManager now has an API to find out if a named wallpaper is
in use by any users.

Change-Id: I27877aef1d82126c0a1428c3d1861619ee5f8653
allpaper/IWallpaperConnection.aidl
allpaper/WallpaperService.java
9f750af6c178d8abb5c12d34efba599e3d53aea4 10-Sep-2012 John Spurlock <jspurlock@google.com> Update the dream manager to be multi-user aware.

Dream settings are stored per-user, so dream manager operations
must act according to the calling or current user.

Bug:7041514
Change-Id: I4a0bbbd76886e6440b1afd89c61af5f4569b0e18
reams/DreamManagerService.java
4fde81f7e70da4d2b84f8d60c738cad885663dec 25-Aug-2012 John Spurlock <jspurlock@google.com> DreamManagerService: Handle missing db value

Should not happen (except for early dogfooders with a specific build),
but handle gracefully as we do elsewhere in dream manager.

To test:
adb shell sqlite3 \
/data/data/com.android.providers.settings/databases/settings.db \
"delete from secure where name = 'screensaver_components'"

Pre-fix workaround:
adb shell sqlite3 \
/data/data/com.android.providers.settings/databases/settings.db \
"insert into secure(name, value) values ('screensaver_components', \
'com.google.android.deskclock/com.android.deskclock.Screensaver')"

Change-Id: I2cf39608c8dd5011f6a00deece95eb6554da5173
reams/DreamManagerService.java
1a868b7981ca5f52e893fdf9f8f538c9d5ce241d 22-Aug-2012 John Spurlock <jspurlock@google.com> Add framework support for multiple dreams.

Bug:7028665
Change-Id: I4fba6b8e39dc07af4490c621ac3bc7b3867371b2
reams/Dream.java
reams/DreamManagerService.java
reams/IDreamManager.aidl
98365d7663cbd82979a5700faf0050220b01084d 20-Aug-2012 Jeff Brown <jeffbrown@google.com> Refactor for multi-display support.

Split WindowManagerImpl into two parts, the WindowManager
interface implementation remains where it is but the global
communications with the window manager are now handled by
the WindowManagerGlobal class. This change greatly simplifies
the challenge of having separate WindowManager instances
for each Context.

Removed WindowManagerImpl.getDefault(). This represents the
bulk of this change. Most of the usages of this method were
either to perform global functions (now handled by WindowManagerGlobal)
or to obtain the default display (now handled by DisplayManager).

Explicitly associate each new window with a display and make
the Display object available to the View hierarchy.

Add stubs for some new display manager API features.

Start to split apart the concepts of display id and layer stack.
since they operate at different layers of abstraction.
While it's true that each logical display uniquely corresponds to a
surface flinger layer stack, it is not necessarily the case that
they must use the same ids. Added Display.getLayerStack()
and started using it in places where it was relatively easy to do.

Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
reams/DreamManagerService.java
allpaper/WallpaperService.java
9630704ed3b265f008a8f64ec60a33cf9dcd3345 28-Jul-2012 Jeff Brown <jeffbrown@google.com> Power manager rewrite.

The major goal of this rewrite is to make it easier to implement
power management policies correctly. According, the new
implementation primarily uses state-based rather than event-based
triggers for applying changes to the current power state.

For example, when an application requests that the proximity
sensor be used to manage the screen state (by way of a wake lock),
the power manager makes note of the fact that the set of
wake locks changed. Then it executes a common update function
that recalculates the entire state, first looking at wake locks,
then considering user activity, and eventually determining whether
the screen should be turned on or off. At this point it may
make a request to a component called the DisplayPowerController
to asynchronously update the display's powe state. Likewise,
DisplayPowerController makes note of the updated power request
and schedules its own update function to figure out what needs
to be changed.

The big benefit of this approach is that it's easy to mutate
multiple properties of the power state simultaneously then
apply their joint effects together all at once. Transitions
between states are detected and resolved by the update in
a consistent manner.

The new power manager service has is implemented as a set of
loosely coupled components. For the most part, information
only flows one way through these components (by issuing a
request to that component) although some components support
sending a message back to indicate when the work has been
completed. For example, the DisplayPowerController posts
a callback runnable asynchronously to tell the PowerManagerService
when the display is ready. An important feature of this
approach is that each component neatly encapsulates its
state and maintains its own invariants. Moreover, we do
not need to worry about deadlocks or awkward mutual exclusion
semantics because most of the requests are asynchronous.

The benefits of this design are especially apparent in
the implementation of the screen on / off and brightness
control animations which are able to take advantage of
framework features like properties, ObjectAnimator
and Choreographer.

The screen on / off animation is now the responsibility
of the power manager (instead of surface flinger). This change
makes it much easier to ensure that the animation is properly
coordinated with other power state changes and eliminates
the cause of race conditions in the older implementation.

The because of the userActivity() function has been changed
so that it never wakes the device from sleep. This change
removes ambiguity around forcing or disabling user activity
for various purposes. To wake the device, use wakeUp().
To put it to sleep, use goToSleep(). Simple.

The power manager service interface and API has been significantly
simplified and consolidated. Also fixed some inconsistencies
related to how the minimum and maximum screen brightness setting
was presented in brightness control widgets and enforced behind
the scenes.

At present the following features are implemented:

- Wake locks.
- User activity.
- Wake up / go to sleep.
- Power state broadcasts.
- Battery stats and event log notifications.
- Dreams.
- Proximity screen off.
- Animated screen on / off transitions.
- Auto-dimming.
- Auto-brightness control for the screen backlight with
different timeouts for ramping up versus ramping down.
- Auto-on when plugged or unplugged.
- Stay on when plugged.
- Device administration maximum user activity timeout.
- Application controlled brightness via window manager.

The following features are not yet implemented:

- Reduced user activity timeout for the key guard.
- Reduced user activity timeout for the phone application.
- Coordinating screen on barriers with the window manager.
- Preventing auto-rotation during power state changes.
- Auto-brightness adjustment setting (feature was disabled
in previous version of the power manager service pending
an improved UI design so leaving it out for now).
- Interpolated brightness control (a proposed new scheme
for more compactly specifying auto-brightness levels
in config.xml).
- Button / keyboard backlight control.
- Change window manager to associated WorkSource with
KEEP_SCREEN_ON_FLAG wake lock instead of talking
directly to the battery stats service.
- Optionally support animating screen brightness when
turning on/off instead of playing electron beam animation
(config_animateScreenLights).

Change-Id: I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
reams/DreamManagerService.java
f7178d3cadfeb0101491eeea7d7f3b0d7c26dbe6 10-Aug-2012 Daniel Sandler <dsandler@android.com> Allow the secure keyguard to engage behind Dreams.

TYPE_DREAM windows are now considered for relevant window
flags alongside application windows.

Bug: 6961616
Change-Id: Idee3303276a8b69c7f07de1d6acdce64c6e1b863
reams/Dream.java
9252dbd314bbce75f1e57330c5a911c9f6428cf5 10-Aug-2012 Daniel Sandler <dsandler@android.com> Add fullscreen to Dream.lightsOut().

Also don't go into lightsOut() by default in
onAttachedToWindow(), in case some dream doesn't want to do
that.

We should probably make this even more flexible, but
this is a start.

Change-Id: I606b42a288259902e89d59595ad60548a89866da
reams/Dream.java
a2fbe53f1e59a9b015d27213fbc8588883f4d408 10-Aug-2012 Daniel Sandler <dsandler@android.com> More termination conditions for Dreams.

Default implementation of Dreams will finish() on KEYCODE_BACK.

PhoneStatusBar will awaken() from any Dream when the Home key is pressed.

Change-Id: I55e2a5d533a7fb93debc4c54514dba3b9098f009
reams/Dream.java
5927d957ea36744315e958ab4a9a1f095d48721c 08-Aug-2012 Daniel Sandler <dsandler@android.com> Merge "Migrate Dreams default settings to DatabaseHelper." into jb-mr1-dev
fdb7c36a108e6a7887de6611b3f1541e3009f2d5 06-Aug-2012 Daniel Sandler <dsandler@android.com> Migrate Dreams default settings to DatabaseHelper.

Also switch Dreams on for all charging devices by default.

Change-Id: Iccbcc2906d55214320b2f467e88ba9cb188f4886
reams/DreamManagerService.java
758143ecfedbe08cc6c4fed0ad8ad7a854194ca4 07-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Window position not reported if the window is not moved.

1.If a window is shown but never moved the window window
is never notified for its current location. Therefore,
accessibility nodes do not contain correct bounds in
screen coordinates.

bug:6926295

Change-Id: I7df18b095d33ecafffced75aba9e4f4693b0c393
allpaper/WallpaperService.java
bc632a28e4fba4a659baf39b9fd3d06d10cfda97 31-Jul-2012 John Spurlock <jspurlock@google.com> Re-enable dreams: frameworks/base

Enable feature in config. Expose Dream in public api for unbundled apps.
Unhide package. Add isDreaming() method to service.

Re-arrange the Dream api a bit. (use onStart as hook for subclasses).
Coordinate properly with power manager.

Replace old dock mode (don't fire old intent).

Change-Id: I1318d20cc1613e5d862f2913f2fcdc9719302cf7
Bug: 6921930
reams/Dream.java
reams/DreamManagerService.java
reams/IDreamManager.aidl
6881a10557acf3b0270de54799d6f19437acf584 27-Jul-2012 Craig Mautner <cmautner@google.com> Small step towards supporting multiple displays

Change-Id: I353449c2b464394988c7e0203656b5851a0c9127
allpaper/WallpaperService.java
aac0d4ed026d1cfbcf3fa81c6e4eb96f4347ca17 20-Jul-2012 Fabrice Di Meglio <fdimeglio@google.com> Replace left/right with start/end for Gravity / LayoutParams / Padding

- see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi)

Change-Id: Id9af5375fb9b0edeae5232c77e52ecd497bd2e67
allpaper/WallpaperService.java
5702d4dfb5b81491f873a3617f8d8fc8dc5279e6 30-Jun-2012 Craig Mautner <cmautner@google.com> Notify client side of window movement.

Add a one way method to notify Views that the window has moved
on the screen. Fixes issues arising from the IME popping up and
translating the window that uses it. Accessibility was left unaware
of these movements and was drawing the box around the wrong widgets.
Similarly PopupWindow used getLocationOnScreen to determine how
much screen real estate was above and below the anchor point to
determine where to put an anchored window.

Fixes bug 6623031.

Change-Id: I4731a94d5424c1ec77bf1729fba8fc9ea34cae46
allpaper/WallpaperService.java
85afd1b6f871d471fdff1980134676a5f1690525 13-May-2012 Dianne Hackborn <hackbod@google.com> Implement new window cropping.

The window manager now performs the crop internally, evaluating
it every animation from, to be able to update it along with
the surface position.

Change-Id: I960a2161b9defb6fba4840fa35aee4e411c39b32
allpaper/WallpaperService.java
c33208fe72662fd89b75e996dbd495237a0021d4 07-May-2012 satok <satok@google.com> Spell check the first word of the sentence

Change-Id: I7803d92de8f4ea399cef5c2d1ddf5396d59ef2cf
extservice/SpellCheckerService.java
5c58de3a523a384c47b0b1e0f5dd9728a74cd9f7 29-Apr-2012 Dianne Hackborn <hackbod@google.com> Add system insets to windows.

This will be used to determine which parts of a window a completely
hidden by system UI elements (status bar, nav bar, system bar) so
that they can be clipped out from rendering.

Change-Id: I2c6c6ac67dbdfeed82d2c089ef806fb483165bd9
allpaper/WallpaperService.java
eb4cc492c93ab9635dde78b958a834120412e72a 27-Apr-2012 Jeff Sharkey <jsharkey@android.com> Protect system services with DUMP permission.

Change-Id: I5e53859f8b8e5473e54eca43ebd7de841f1a05ff
reams/DreamManagerService.java
35be7560300a97fc3675bdd325910f28827d9508 19-Apr-2012 Jeff Sharkey <jsharkey@android.com> Move SystemUI out of system UID.

Add permissions for various things it pokes. Create new permission
to control launching non-exported activities from recents. Hidden
API to relax WallpaperService checks.

Change-Id: I547fdcd7c213dd153ae101533ce7c56cd8f86a0d
allpaper/WallpaperService.java
c7ee1b9369ffd7c21a70738056a82dc4238e7fc1 11-Apr-2012 satok <satok@google.com> Get rid of "isSentenceLevelSpellCheckSupported"

Bug: 6320351
Change-Id: I0e931b7248f8c65268b60af599c07432d58d2f1f
extservice/SpellCheckerService.java
7d276c377ce0c56630c06a6da431a6cb9bd76d1e 30-Jan-2012 Daniel Sandler <dsandler@android.com> New Android Dreams architecture, disabled for now.

Rather than normal Activities (which have a host of problems
when used for this purpose), screen savers are now a
special kind of Service that can add views to its own
special window (TYPE_DREAM, in the SCREENSAVER layer).

Dreams are now launched by the power manager; whenever it is
about to turn the screen off, it asks the window manager if
it wants to run a screen saver instead. (http://b/5677408)

Also, the new config_enableDreams bool allows the entire
feature to be switched on or off in one place. It is
currently switched off (and the APIs are all @hidden).

Change-Id: Idfe9d430568471d15f4b463cb70586a899a331f7
reams/Dream.java
reams/DreamManagerService.java
reams/IDreamManager.aidl
reams/IDreamService.aidl
431ea84e1fde20139b748a4818c44e85a715e155 29-Mar-2012 satok <satok@google.com> Add document to SpellCheckerService

Bug: 6136149

Change-Id: I93f0127878372006a240a9a34823f873bcc09927
extservice/SpellCheckerService.java
6183cd64a98a69ea247813c9ba0a07326c4bc1ae 26-Mar-2012 satok <satok@google.com> Take sentence-level spell checking APIs public

Bug: 6136149

Change-Id: I772164d9c67e95876c228efcce2356a81a06be4f
extservice/SpellCheckerService.java
d404fe110558bd2e1960b428db6a2ee8bfd040cd 21-Feb-2012 satok <satok@google.com> Refactor sentence level spell checking APIs

Support sentence level spell checking APIs: Step 1

Change-Id: I31c0b88e7885f33a0694ab60b8f2dbceeffe42f1
extservice/SpellCheckerService.java
b5052de75736527549d7e537632777c6fec2e4f0 14-Dec-2011 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of a80bab37 to master

Change-Id: Id71cc68a617e1ea0dd2f3932d454be6dba336eef
33b8ee509f36a0168c8ce5a9091b57ab936f4c13 14-Dec-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5756204: Crespo IME briefly appears shortened when...

...rotating to landscape

When doing spell checking in the same process as the spell checker, we
need to make sure it is still done asynchronously.

Putting this in I noticed quite a few threading issues in this code, so
I also addressed those (which became very obviously a problem with the
async stuff here now).

Also tweaked the service side to run spell checking at background priority.

Change-Id: I01bafe3bec6bceeca911d6bf2f61a486a2fd4c48
extservice/SpellCheckerService.java
32cbc3855c2a971aa5a801fd339fb6a37db91a1a 01-Dec-2011 Jeff Brown <jeffbrown@google.com> Refactor InputQueue as InputEventReceiver.

This change simplifies the code associated with receiving input
events from input channels and makes it more robust. It also
does a better job of ensuring that input events are properly
recycled (sometimes we dropped them on the floor).

This change also adds a sequence number to all events, which is
handy for determining whether we are looking at the same event or a
new one, particularly when events are recycled.

Change-Id: I4ebd88f73b5f77f3e150778cd550e7f91956aac2
allpaper/WallpaperService.java
4952dfd16a0f839559ffa78f5016394caf85294f 01-Dec-2011 Jeff Brown <jeffbrown@google.com> Ensure input events are processed in-order in the application.

As it turns out, it used to be possible for there to be multiple
input events simultaneously in flight in an application. Although
it worked, it made it hard to reason about what was going on.
The problem was somewhat exacerbated by the introduction of a
queue of "InputEventMessage" objects as part of an earlier latency
optimization.

This change restores order from chaos and greatly simplifies the
invariants related to input event dispatch within the application.

Change-Id: I6de5fe61c1fe2ac3dd33edf770d949044df8a019
allpaper/WallpaperService.java
c0b7f65ae0594e19d1272e5caf2d83638041d19c 29-Nov-2011 Dianne Hackborn <hackbod@google.com> am 496f6e2a: am b54980d1: Merge "Fix issue #5588689: Black camera preview after coming back from gmail" into ics-mr1

* commit '496f6e2ad656c5bb8a277e191554d16abd290b58':
Fix issue #5588689: Black camera preview after coming back from gmail
6d05fd3c795088ac60f86382df5a66d631e8a0cb 19-Nov-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5588689: Black camera preview after coming back from gmail

Make surface management between SurfaceView and the window manager
much more controlled, to ensure that SurfaceView always gets to report
the current surface is destroyed before the window manager actually
destroys it.

Also a small tweak to allow windows that have a wallpaper background
to still have a preview window. This makes launching home after it
has been killed feel much more responsive.

Change-Id: I0d22cf178a499601a770cb1dbadef7487e392d85
allpaper/WallpaperService.java
0dc1f648a09b46c45190ba1ce7daecf7fada4347 18-Nov-2011 satok <satok@google.com> add sentence level spell checker hidden apis

Change-Id: If65c89044bed064fd01a554e33176f64f7c21c0f
extservice/SpellCheckerService.java
74061ff90453c79ddbde468f630a41425da07710 02-Nov-2011 satok <satok@google.com> Fix a memory leak of a Binder in SpellCheckerService

Bug: 5499490

Change-Id: I167a3e9dfdd6edd06c6ad993fbff3a535c81b09c
extservice/SpellCheckerService.java
a8e5a2bcd6a0d35893187c6df42425c03be005da 28-Oct-2011 Chet Haase <chet@google.com> Optimize handling of scrolled wallpapers

Swiping the home screen causes the WindowManagerService to do
a bunch of work to keep the wallpapers in sync. First, it lays out
and places all windows. Also, it notifies the SystemUI process that
the wallpaper position has changed.

The layout/place operation is too much work - we only need to set
the position values for the wallpaper, not relayout the whole system.

The notification mechanism must exist, but should be optional. Most
wallpapers don't care (especially static ImageWallpapers). So we'll
give them a new API (WallpaperService.Engine.setWantsOffsets()) to
allow wallpapers to opt out of this process and avoid the performance
overhead.

Change-Id: I66c38375438937f14f6f5550565b28eb204b1e06
allpaper/WallpaperService.java
182e4ae2f4bbfdd2272f6e425c6f3734b3f157bf 27-Oct-2011 satok <satok@google.com> Add a path to HelloSpellChecker sample application for SDK build

Change-Id: I77e334f8e2b50b8609b1729edb253254d6b7360b
extservice/package.html
44619d3e087138775fb19fbd5d7b9f497a0805f4 19-Oct-2011 satok <satok@google.com> Update links for SampleSpellCheckerService for I938ba499

Change-Id: I528fc5ee5f9971ecb3bf47ef1c8b999546724c1f
extservice/package.html
b22723c3f6befe5b2fb50333642818805aa8d52f 18-Oct-2011 Scott Main <smain@google.com> docs: add package summary for spell checker services

Change-Id: Iaac3293f941ec117ec28e031d5e24073e1269851
extservice/package.html
44b75030931d9c65c9e495a86d11d71da59b4429 14-Oct-2011 satok <satok@google.com> Add documents for the spell checker framework and the input method subtype

Bug: 4973788

Change-Id: I7e650f336ba1bb8949899e8b2355e6d492a2e4b2
extservice/SpellCheckerService.java
9a230e01a1237749a8a19a5de8d46531b0c8ca6a 06-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5371530: SYSTEMUI_FLAG_HIDE_NAVIGATION reasserts itself immediately

This cleans up how ui flags are managed between the client and window manager.
It still reports the global UI mode state to the callback, but we now only clear
certain flags when the system goes out of a state (currently this just means the
hide nav bar mode), and don't corrupt other flags in the application when the
global state changes.

Also introduces a sequence number between the app and window manager, to avoid
using bad old data coming from the app during these transitions.

Change-Id: I40bbd12d9b7b69fc0ff1c7dc0cb58a933d4dfb23
allpaper/WallpaperService.java
9fe6cb5cc2cc86a370d47afc44d27fa7086a15be 09-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5273986: The power usage of the mp3 background playback...

...increased from ~50mA to 260mA

Change-Id: I24d7188185f4ec5ff9e1f29c15472ae56c851e5e
allpaper/WallpaperService.java
117999d1f44ec3423369385495ae207898b7b73e 02-Sep-2011 satok <satok@google.com> Make the spell checker session static

Change-Id: I66d51f33e005f46465232d3fc460cda0609609ea
extservice/SpellCheckerService.java
9e4e727b4a164c17944e8ae6eb2d2532a98737f8 30-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issues #5233826 and #5209847 -- live wallpapers.

5233826 when a live wallpaper starts, it does so regardless of its visibility

The WallpaperService is now very forceful about telling a wallpaper it is
not visible when it first starts.

5209847 Make launcher turn off the wallpaper in all apps.

Fix a bug in the window manager that would not correctly handle the wallpaper
flag changing.

Change-Id: Ie3314043a84664be72a1304a1705408efd789a15
allpaper/WallpaperService.java
527de8e3de4c2bad9ba0fc0e50f8fb3f95ba4681 23-Aug-2011 Dianne Hackborn <hackbod@google.com> Debugging for issue #5180240: Wallpaper continues to consume CPU when screen off

Add debug dump to the wallpaper service.

Change-Id: I01502b10de93b6f9d2315fd66776f3f2210e6696
allpaper/WallpaperService.java
5357806980269d846a15c845a6fcc0384fb18860 03-Aug-2011 satok <satok@google.com> API cleanup for the spell checker framework

Bug: 5110151

- Add a bundle to an argment of newSpellCheckerSession
- Expose SpellCheckerSessionImpl in SpellCheckerService
- Fix function names
- etc

Change-Id: Ia8ec783b7b4d5fcd18389854b445fc10fc502297
extservice/SpellCheckerService.java
aafd955fa8f5c31c511763c0f826b6d7acf15b9c 02-Aug-2011 satok <satok@google.com> Move SpellCheckerSession

SpellCheckerSession should be in android.view.textservice because this class will be used directly by users.

Change-Id: I0df6d7958adda421312b5f641ac4459ca4739cc9
extservice/SpellCheckerSession.java
6be6d7548fb7c29a4d46dc985318ab2adf69f95f 28-Jul-2011 satok <satok@google.com> Handle the existing binds to spell checkers correctly.

Change-Id: I32efce9f8c09b5a829b0431e8c444fc54b03b440
extservice/SpellCheckerService.java
extservice/SpellCheckerSession.java
142d7575b52d03d46246e3b142e22ebc32d45a84 25-Jul-2011 satok <satok@google.com> [step4] Change service interface

Change-Id: Iaf86065a2a7f075c670ebdaa60a33a815dcb8113
extservice/SpellCheckerService.java
1bedd99761e3d2acdac947d641e7fee5db556141 23-Jul-2011 satok <satok@google.com> Tweak APIs for SpellChecker

1. Move getSupellcheckerInfo to SpellCheckerSession
2. Change the interface of getSpellCheckerSession
3. Remove a flag in SuggestionsInfo

Change-Id: I3debe09e213fc0ab74618eb3504383f2a9447fd9
extservice/SpellCheckerSession.java
988323c57bd25a58f05dfa492d9b9c8ab62c5153 22-Jun-2011 satok <satok@google.com> Create TextServiceManager and SpellCheckerService

Bug: 4176026

This CL inherits https://android-git.corp.google.com/g/112600

Spec of TextServiceManager
- Chooses the most applicable TextService(e.g. SpellCheckerService, WordBreakIteratorService..)
for each locale

Spec of SpellCheckerService
- Returns whether the given string is a correct word or not
- Returns Suggestions for the given string

Change-Id: Iaa425c7915fe70767ad0b17bf6c6fbcd2a1200b2
extservice/SpellCheckerService.java
extservice/SpellCheckerSession.java
6dd005b48138708762bfade0081d031a2a4a3822 18-Jul-2011 Dianne Hackborn <hackbod@google.com> I. Can. Not. Stand. ViewAncestor.

It was done so we would have the name "ViewRoot" available for a
public API. However, the name "ViewAncestor" just makes no sense.
So instead, change it to ViewRootImpl.

Change-Id: If9599ca67896f339f6fefa7d1dde121201171d97
allpaper/WallpaperService.java
24572375323dee79e3b456af07640ca194fd40bf 10-Jun-2011 Jeff Brown <jeffbrown@google.com> Optimize orientation changes.

Modified setRotation to allow it to restart a rotation in
progress as long as the rotation animation has not yet started.
This enables the system to recover more quickly from mispredicted
orientation changes.

Removed the call to System.gc() when freezing the display, which
added 60-80ms before we even started the orientation change.
We used to need this to make it less likely that an upcoming GC
would cause a pause during the window animation, but this is
not longer a concern with the concurrent GC in place.

Changed the wallpaper surface to be 32bit. This accelerates
drawing and improves the overall appearance slightly.

Reduced code duplication in the WallpaperManager.

Change-Id: Ic6e5e8bdce4b970b11badddd0355baaed40df88a
allpaper/WallpaperService.java
c6cc0f8c19d9eccf408a443fa2bf668af261dcd0 12-Apr-2011 Joe Onorato <joeo@google.com> Rename ViewRoot to ViewAncestor.

ViewRoot is about to be a new public class for poking at ViewAncestor.

Change-Id: Ie95d707c6d8bbb48f78d093d7b2667851812a7d5
allpaper/WallpaperService.java
33bbfd2232ea9eaae9a9d87a05a95a430f09bd83 25-Feb-2011 Jeff Brown <jeffbrown@google.com> Add support for mouse hover and scroll wheel.

Dispatch ACTION_HOVER_MOVE and ACTION_SCROLL through the View
hierarchy as onGenericTouchEvent. Pointer events dispatched
this way are delivered to the view under the pointer. Non-pointer
events continue to be delivered to the focused view.

Added scroll wheel support to AbsListView, ScrollView,
HorizontalScrollView and WebView. Shift+VSCROLL is translated
to HSCROLL as appropriate.

Added logging of new pointer events in PointerLocationView.

Fixed a problem in EventHub when a USB device is removed that
resulted in a long stream of ENODEV errors being logged until INotify
noticed the device was gone.

Note that the new events are not supported by wallpapers at this time
because the wallpaper engine only delivers touch events.

Make all mouse buttons behave identically. (Effectively we only
support one button.)

Change-Id: I9ab445ffb63c813fcb07db6693987b02475f3756
allpaper/WallpaperService.java
3b723ace405305e61ab25f96cb8ee1a321edcf9b 02-Feb-2011 Michael Jurka <mikejurka@google.com> am 46ab5e13: Merge "add missing call to superclass method" into honeycomb

* commit '46ab5e13f27324d634ff27b7fd75c5d432b915bf':
add missing call to superclass method
b8f939fb5759fc25fced8df3304d6288b0c25430 02-Feb-2011 Michael Jurka <mikejurka@google.com> add missing call to superclass method
allpaper/WallpaperService.java
d48ba867d69159542cf967d5fcaba41c5474f134 02-Feb-2011 Dianne Hackborn <hackbod@google.com> am e77f9914: Merge "Whoops, need to put this check back." into honeycomb

* commit 'e77f99144f015d9044909a4c128fa916465b0671':
Whoops, need to put this check back.
a48a37f025dd875bfb1e46b673a3a54fb8e6b26b 02-Feb-2011 Dianne Hackborn <hackbod@google.com> Whoops, need to put this check back.

We still don't want third party wallpapers to be able to do this,
since it can't work with all window animations.

Change-Id: I97c8ef78c36bd89bf47a7c4533ed1c244dcff4a6
allpaper/WallpaperService.java
2a70a1e349cb982ae68196195d4745474d8f2568 02-Feb-2011 Dianne Hackborn <hackbod@google.com> am bd77ed7f: Merge "Make image wallpaper use a big surface." into honeycomb

* commit 'bd77ed7fff87b79008e3b071115674dff2721994':
Make image wallpaper use a big surface.
f185552f63fe4a4a1a8de602bc6fc6e57d3ff7fe 02-Feb-2011 Dianne Hackborn <hackbod@google.com> Make image wallpaper use a big surface.

Change-Id: I119f2bfee5fde08040520bd0da8574194a893ab5
allpaper/WallpaperService.java
391ef42c92ab97e5c22a720973790696d30576ca 25-Jan-2011 Jeff Brown <jeffbrown@google.com> am 3168a137: Merge "Fix surface frame size reporting." into honeycomb

* commit '3168a13723ff0f3f87937457fe33c3518caa4bb9':
Fix surface frame size reporting.
30bc34f191ca8a009af313fc751e5b4bff6e39a1 25-Jan-2011 Jeff Brown <jeffbrown@google.com> Fix surface frame size reporting.

The SurfaceHolder provided by the wallpaper service was not reporting
the correct size in getSurfaceFrame(). This broke an optimization in
the ImageWallpaper. The old code happened to work because calling
lockCanvas on the SurfaceHolder with a null dirty rectangle happened
to have the side-effect of updating the SurfaceHolder's surface frame
size field because it passed mSurfaceFrame as the dirty rect, causing
mSurfaceFrame to be set to the size of the region to be drawn.

However, relying on this side-effect is wrong. Among other things,
the dirty region could actually be smaller than the surface frame.

This patch fixes WallpaperService, SurfaceView and ViewRoot to ensure
that the surface frame size is always set explicitly and is not modified
by calls to lockCanvas.

Change-Id: I10948f5ec269409ceaf0f7d32b3f6731e9499ebc
allpaper/WallpaperService.java
b841fa63026803093c093ad25ab0ccbd4c49e45b 13-Jan-2011 Brad Fitzpatrick <bradfitz@android.com> am 54f428a6: am bdb7aee0: Merge "Fix for crash when setting live wallpaper."

* commit '54f428a63f33f4722c09b7688e6ca7960394f81f':
Fix for crash when setting live wallpaper.
d9463f50c8c1aa8969502b117777a4c185971c08 12-Jan-2011 Mattias Petersson <mattias.petersson@sonyericsson.com> Fix for crash when setting live wallpaper.

This fix prevents a crash that sometimes happens when setting a
live wallpaper. It happened when pressing "Set wallpaper" button
in the live wallpaper preview activity, before the preview was
fully loaded.

The crash happened in native code while updating the wallpaper
surface when calling mInputChannel.registerInputChannel(),
because the previous call to
mSession.add(mWindow, mLayout, View.VISIBLE, mContentInsets,
mInputChannel)
had failed. The fix aborts the surface update when it is not
possible to add the window.

Change-Id: I0e79a851e5c7f7b15eb07043c63d1f4d78f14616
allpaper/WallpaperService.java
9f3bdfe3eb04723efa07a2d0e6a7709da1191fa5 13-Oct-2010 Jeff Brown <jeffbrown@google.com> Add method for sending wallpaper commands directly to an engine.

This enables the livewallpaper preview activity to send tap commands to the
wallpaper so that the preview is more interactive.

Also add a command for sending secondary pointer taps for multitouch
enabled wallpapers.

Change-Id: I9fa10cc47d92dfa9f1a1208aba44c66943eee3ec
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
3915bb845b032dc184dba5e60970b803390ca3ed 05-Nov-2010 Jeff Brown <jeffbrown@google.com> Tell system server whether the app handled input events.

Refactored ViewRoot, NativeActivity and related classes to tell the
dispatcher whether an input event was actually handled by the application.

This will be used to move more of the global default key processing
into the system server instead of the application.

Change-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28
allpaper/WallpaperService.java
f04c8816f95bea10071ea24e5797181df472d52d 29-Oct-2010 Joe Onorato <joeo@android.com> am dbf9a02b: am ed3c7be8: Merge "Report the new size to wallpapers when the requested size changed." into gingerbread

* commit 'dbf9a02b0abe7cac3c15f7cc36b95d5998927ad8':
Report the new size to wallpapers when the requested size changed.
dcfae5c0fdc917f15a3e9ab75ee1d819b6db26ba 29-Oct-2010 Joe Onorato <joeo@android.com> Report the new size to wallpapers when the requested size changed.

We were telling the app, but we weren't saving the data for ourselves.
This also tells them to re-scroll when there's a new size.

Bug: 3144373
Change-Id: I9d12b714119ff02dd7d7f1cfa997d8a44475b9e9
allpaper/WallpaperService.java
4924aee9cb1c5988359f3162b6e89689c5b101e1 22-Oct-2010 Jeff Brown <jeffbrown@google.com> am 482284ad: am 6b3178a6: Merge "Fix a race condition in wallpaper move throttling." into gingerbread

Merge commit '482284ad0e3226b49c27bf41442c1cb150853226'

* commit '482284ad0e3226b49c27bf41442c1cb150853226':
Fix a race condition in wallpaper move throttling.
840db1f678ed15f0f3e9c58310b1e80ebb1f331a 22-Oct-2010 Jeff Brown <jeffbrown@google.com> Fix a race condition in wallpaper move throttling.

Bug: 3099316
Change-Id: Ia3221975b5be7fae8359d6ab531bbecd0e29aee9
allpaper/WallpaperService.java
25108167fdc2f2e1d7f75f7eacfe7cb904ab92a9 12-Oct-2010 Bjorn Bringert <bringert@android.com> Remove the unused UrlRendererService

Change-Id: I48af718d9753b475bd041147f0d18bee60da84ec
rlrenderer/IUrlRendererCallback.aidl
rlrenderer/IUrlRendererService.aidl
rlrenderer/UrlRenderer.java
rlrenderer/UrlRendererService.java
62bf4a0283e855e2fb5f40f36909501e5b4a09eb 09-Sep-2010 Mathias Agopian <mathias@google.com> Force wallpaper surface to 565.

This is to maintain backward compatibility with badly programmed
GL wallpapers. Wallpapers can call SurfaceHolder.setFormat() to
request a different format.

Change-Id: Ib42b0cf6c7040d1300cad239c3acfd5c4c6cd326
allpaper/WallpaperService.java
c5ed5910c9ef066cec6a13bbb404ec57b1e92637 15-Jul-2010 Jeff Brown <jeffbrown@google.com> Add support for new input sources.

Added several new coordinate values to MotionEvents to capture
touch major/minor area, tool major/minor area and orientation.

Renamed NDK input constants per convention.

Added InputDevice class in Java which will eventually provide
useful information about available input devices.

Added APIs for manufacturing new MotionEvent objects with multiple
pointers and all necessary coordinate data.

Fixed a bug in the input dispatcher where it could get stuck with
a pointer down forever.

Fixed a bug in the WindowManager where the input window list could
end up containing stale removed windows.

Fixed a bug in the WindowManager where the input channel was being
removed only after the final animation transition had taken place
which caused spurious WINDOW DIED log messages to be printed.

Change-Id: Ie55084da319b20aad29b28a0499b8dd98bb5da68
allpaper/WallpaperService.java
1d28f9c0aabee7f9e1c38451a4baf13109244c18 14-Jul-2010 Dianne Hackborn <hackbod@google.com> Fix docs build.

Change-Id: Ibb8e1e4b18ec1e92e28d354cdcce37676056b348
allpaper/WallpaperService.java
d76b67c340d1564abf8d14d976fdaf83bf2b3320 14-Jul-2010 Dianne Hackborn <hackbod@google.com> IME events are now dispatched to native applications.

And also:

- APIs to show and hide the IME, and control its interaction with the app.
- APIs to tell the app when its window resizes and needs to be redrawn.
- API to tell the app the content rectangle of its window (to layout
around the IME or status bar).

There is still a problem with IME interaction -- we need a way for the
app to deliver events to the IME before it handles them, so that for
example the back key will close the IME instead of finishing the app.

Change-Id: I37b75fc2ec533750ef36ca3aedd2f0cc0b5813cd
allpaper/WallpaperService.java
00fa7bdd69f0868fd17ea7c881c771d785b2fbbd 03-Jul-2010 Jeff Brown <jeffbrown@google.com> More native input dispatch work.

Removed old input dispatch code.
Refactored the policy callbacks.
Pushed a tiny bit of the power manager state down to native.
Fixed long press on MENU.
Made the virtual key detection and cancelation a bit more precise.

Change-Id: I5d8c1062f7ea0ab3b54c6fadb058c4d5f5a9e02e
allpaper/WallpaperService.java
349703effce5acc53ed96f7ed8556131f0c65e18 22-Jun-2010 Jeff Brown <jeffbrown@google.com> Native input event dispatching.

Target identification is now fully native.
Fixed a couple of minor issues related to input injection.
Native input enabled by default, can be disabled by setting
WindowManagerPolicy.ENABLE_NATIVE_INPUT_DISPATCH to false.

Change-Id: I7edf66ed3e987cc9306ad4743ac57a116af452ff
allpaper/WallpaperService.java
46b9ac0ae2162309774a7478cd9d4e578747bfc2 23-Apr-2010 Jeff Brown <jeffbrown@google.com> Native input dispatch rewrite work in progress.

The old dispatch mechanism has been left in place and continues to
be used by default for now. To enable native input dispatch,
edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy.

Includes part of the new input event NDK API. Some details TBD.

To wire up input dispatch, as the ViewRoot adds a window to the
window session it receives an InputChannel object as an output
argument. The InputChannel encapsulates the file descriptors for a
shared memory region and two pipe end-points. The ViewRoot then
provides the InputChannel to the InputQueue. Behind the
scenes, InputQueue simply attaches handlers to the native PollLoop object
that underlies the MessageQueue. This way MessageQueue doesn't need
to know anything about input dispatch per-se, it just exposes (in native
code) a PollLoop that other components can use to monitor file descriptor
state changes.

There can be zero or more targets for any given input event. Each
input target is specified by its input channel and some parameters
including flags, an X/Y coordinate offset, and the dispatch timeout.
An input target can request either synchronous dispatch (for foreground apps)
or asynchronous dispatch (fire-and-forget for wallpapers and "outside"
targets). Currently, finding the appropriate input targets for an event
requires a call back into the WindowManagerServer from native code.
In the future this will be refactored to avoid most of these callbacks
except as required to handle pending focus transitions.

End-to-end event dispatch mostly works!

To do: event injection, rate limiting, ANRs, testing, optimization, etc.

Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
allpaper/WallpaperService.java
dc8a7f69d7df5f1ca29763995a0d55acf7936fc6 10-May-2010 Dianne Hackborn <hackbod@google.com> Add new API to take over a window's Surface.

Change-Id: Iad6245faadc95f19ea63c8e229a1c02e9188f69e
allpaper/WallpaperService.java
18ee31e89766ec78f1c25f4e307306a16fe35818 28-Apr-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2594388: WallpaperService doesn't always call onSurfaceDestroyed()

Take care of the window manager destroying a surface, to report to the
app that it has been destroyed. Make sure to perform a traversal when
becoming visible to re-create the surface if needed.

Change-Id: If3bc05e0106f90d4c3bad2d7575212667680fbc8
allpaper/WallpaperService.java
ba3e31d9eed67291a51b501d12fdc27625af688e 23-Apr-2010 Dianne Hackborn <hackbod@google.com> Some debugging help for issue #2594388

WallpaperService doesn't always call onSurfaceDestroyed()

Just helps us see a little better what is going on.

Change-Id: Ibe8efd9e343e880ca31df446c8b36c7fa3722e87
allpaper/WallpaperService.java
694f79b5d1196640d1beb680b7d1fc68e6e77cbd 18-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2519590: Lock screen stuck in landscape mode

Well, mostly. There is still a problem here where the first time
you show the lock screen it just doesn't draw itself. I assume
this is something breaking in the view hierarchy as it floounders
around removing and adding new views as it is first being shown...
but no idea at this point what is the actual case.

Change-Id: Iba99ae3242931c8673b17b106c86fc99e2c52abe
allpaper/WallpaperService.java
04cde3413cbdb004642267f3d2139e90f9c1072e 05-Mar-2010 Romain Guy <romainguy@android.com> Report an offset change in a live wallpaper when the wallpaper is resized.
Bug #2489288

Prior to this change, changing the display's orientation would not send an offset
change, which could cause live wallpapers relying on pixel offsets to display the
wrong position.
allpaper/WallpaperService.java
e36d6e277e49475076b7872d36ea6a5c5b996e9d 18-Feb-2010 Dianne Hackborn <hackbod@google.com> Work on issue #2263557: PMF3000 showing hybrid of portrait and landscape modes

This is a bunch of reworking of how configuration changes are handled:

- When orientation is changing (for whatever reason), the window manager no
longer tries to pre-emptively compute a new configuration. Instead, it
just determines change is happening and tells the window manager.
- The activity manager is now responsible for giving the window manager the
final configuration it is using. This is both so it knows whem the
activity manager is done with its configuration updates, and so the window
manager can use the "real" configuration.
- When an orientation or other configuration change is happening, freeze the
screen and keep it frozen until the activity manager has given us the
final configuration.
- The window manager can now send new configurations to its clients during
its layout pass, as part of a resize, if it has determined that it has
changed. This allows for a new View.onConfigurationChanged() API for any
view to easily find out when the configuration has changed.
- ViewRoot now also works with the activity thread to make sure the process's
current resources are updated to the new configuration when it receives one
from a window. This ensures that at the time onConfigurationChanged() and
other view callbacks are happening, the correct configuration is in force.
- There is now a sequence number associated with Configuration, which
ActivityThread uses to avoid using stale configurations. This is needed now
that it can receive configurations asynchronously from both the window
manager and activity manager.
- The hack for keeping the locale has been removed, and underlying problem
fixed by having Configuration initialize its locale to "unknown" instead of
a valid default value.
allpaper/WallpaperService.java
45948fd407da525e6c8721ba75cfc8b356fc7e0f 14-Jan-2010 Patrick Scott <phanna@android.com> First pass at the url rendering service.

The service renders a list of urls at the given dimension and invokes the
callback interface for each result. A ParcelFileDescriptor is used to transfer
the large image data to the client. The client must close the file descriptor
is order free the underlying resources.

A more robust api will use UrlRendererRequest and UrlRendererResponse objects
to transfer data.
rlrenderer/IUrlRendererCallback.aidl
rlrenderer/IUrlRendererService.aidl
rlrenderer/UrlRenderer.java
rlrenderer/UrlRendererService.java
d68478467e3f837511196c80891d7245d0e163df 13-Jan-2010 Dianne Hackborn <hackbod@google.com> First pass at new device policy and administration APIs.

This adds new DevicAdmin, DevicePolicyManager, and DeviceAdminInfo classes.
See the java docs for each on documentation on them. Basically: a DeviceAdmin
is what you derive from to administer a device; DevicePolicyManager is what you
use to apply and check your policy requirements and perform other administration
tasks.
allpaper/WallpaperService.java
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 09-Jan-2010 Romain Guy <romainguy@android.com> Deprecate fill_parent and introduce match_parent.
Bug: #2361749.
allpaper/WallpaperService.java
af1f42be96a6ffa7a9b63e199e1614281ea3282d 21-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2271668: Live Wallpaper Force-Close when changing from live wallpaper to picasa wallpaper

The detach of the wallpaper engine was coming in after the containing
service was destroyed. This was possible because these are different
IPC interfaces so will not be serialized. The fix is to keep track
of all of the active engines in the serice, and detach any remaining
ones when the service is destroyed.

Change-Id: I8810786a777dd4f7b15cfbd2e0da25866a4f3ec5
allpaper/WallpaperService.java
e4260f4e7da4da32bfab2737018cf9cf75215894 19-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I3aeb4f374a99d5872ba19c04624aa1b5ca6cd5d0
allpaper/WallpaperService.java
23ef7b4836d66d31430fedee2aac36275bb30d4b 19-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix most of issue #2271640: Fix wallpaper etc docs

Only thing remaining is the live wallpaper feature.

Change-Id: I8854c7978999d759bf618307f4f984c9c89d3fc8
allpaper/WallpaperService.java
allpaper/WallpaperSettingsActivity.java
6adba2467ca524b4c4f3d775de6aa10a9ad57aea 10-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2170897: wallpaper touch-up event not seen when exiting lock screen

Make sure to deliver events to the wallpaper until the final up.

Also fix behavior in the case where a window goes away while the pointer is still
down in it, which is a fairly novel situation introduced by the new lock screen.

Also add infrastructure for delivering motion events during preview.

Change-Id: I0de7979be27e00caf0b1eff794ea899a815142f6
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
bf6956b1d95442e9d9c483894d578fe6b7044cbb 10-Nov-2009 Marco Nelissen <marcone@google.com> Add a way for wallpapers to know the delta between virtual screens.
allpaper/WallpaperService.java
47ef42667935dfd49d0bf5f893539a140532a184 07-Nov-2009 Charles Mendis <cmendis@google.com> Expose WallpaperSettingsActivity in the public API.
allpaper/WallpaperSettingsActivity.java
13bf8260134d516cbcc982d360d9f21067f47fa6 06-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix SDK build: a few things missing, a link that was wrong.

Change-Id: I55c9c510b3f0866ce6085927afa00b9fb69dd8c5
allpaper/WallpaperService.java
274b120f3975c8db6daeeab51a5fe08d6dede479 06-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2243096: Need to expose live wallpaper APIs in SDK

Change-Id: I7e996bf549922c1bb8e8c00d051650ffe12d818c
allpaper/WallpaperService.java
7580493b014a2c7ea883cd291255798dc72ebbff 21-Oct-2009 Dianne Hackborn <hackbod@google.com> Implement feature #2117336: Create event communication APIs for live wallpaper

Note: currently only implements an async version (no result), and not yet
actually tested.

Change-Id: Id47ed045a4b0eb309ea8c58daf41a0e03eff1d3a
allpaper/WallpaperService.java
29e4a3c566f435c32f0b95e4ac8e8b33cac6faba 01-Oct-2009 Dianne Hackborn <hackbod@google.com> Update from API review.

Change-Id: I16b1c566f91167aac9615ac59dd297a154c828ea
allpaper/WallpaperSettingsActivity.java
ae87bd089aaa2f30b4e0d68fff25ea725a14aa9e 17-Sep-2009 Marco Nelissen <marcone@google.com> Fix typo
allpaper/WallpaperService.java
9767e41d92bd6f4cf16111b3f911cef78c8b01eb 16-Sep-2009 Dianne Hackborn <hackbod@google.com> Some improvements for wallpaper configuration.

This introduces a new activity that you can derive from to implement
a wall paper configuration activity. This is supposed to select
a theme based on whether it is being run to configure a real wallpaper
or a preview, but this is going to be more difficult to do than I
thought. :(

Also fix a problem in the white theme where the list view's background
was being set to white, so it wouldn't work on a transparent bg.

Change-Id: I26d5a8695a3c878a1664eb09900eded57eaff990
allpaper/WallpaperSettingsActivity.java
19382ac1a4e4e7c23a1346d299368763f149de9c 12-Sep-2009 Dianne Hackborn <hackbod@google.com> Some optizations to wallpaper drawing/scrolling.

First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off. We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable. As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset. This ensures
that the wallpaper better tracks the application. Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
allpaper/WallpaperService.java
bcbcaa7edd32ba67c6290d79f7e7821c4b5b39ac 10-Sep-2009 Dianne Hackborn <hackbod@google.com> Wallpapers, animations, pending intent.

Some more tweaks and fixes to wallpapers. Make sure wallpapers are
told they are not visible when the screen is off. Add some new animations
for transitions across tasks, and fiddle with many of the existing
animations. Clean up the relationship between translucent activities
and animations. Add new API to start a PendingIntent from an
activity.

Change-Id: Ie0bf45fe44081bb6982c75361257a55d9cd9d863
allpaper/WallpaperService.java
eb034652c2037a47ebfd99779e8383bb8bb528af 07-Sep-2009 Dianne Hackborn <hackbod@google.com> Implement all of the infrastructure for configuring wallpapers.

Actually being able to configure a wallpaper relies on additional
work in the launcher and wallpapers that will be in another change.
Also note that this breaks all existing wallpapers, since they now
need to include a meta-data item about themselves. This also
will be fixed in another change.

Change-Id: I97d2c2bd07237abc32f92b9147c32530a2f73c71
allpaper/WallpaperService.java
0586a1b77a788a119166a37fccd909bf9ed65f23 07-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2095422: Some fades from opaque to transparent don't work

ViewRoot was using Surface.clear(), which has different behavior
in different processes -- in the system process it would kill the
surface, causing all windows in that process to immediately disappear
instead of animating away.

This change makes Surface.release() public and uses that instead. It
also renames Surface.clear() to Surface.destroy().

Also fixed some issues in the window manager that were causing the
wallpaper to not get immediately resized when the orientation changes
and its target window is removed and re-added.

Change-Id: I2a992e365cf5747511f0bf1193db32dc2525b218
allpaper/WallpaperService.java
284ac93aa30642fda87d5c40263a1263677c21cd 28-Aug-2009 Dianne Hackborn <hackbod@google.com> More work on wallpapers: animations, lifecycle, scaling, etc.

Yet more work on improving the behavior of wallpapers. This fixes a few
problems in their lifecycle (corresponding change in the picker also
required for this), makes their animations better for hardware that supports
alpha fades, adds animations for the wallpapers themselves, eliminates
fixed size wallpapers, and adjusts the API for retrieving a wallpaper
bitmap to take care of scaling the raw wallpaper image to match the current
desired width and height.

Change-Id: If1c0aaceba4ea4e175dcb7a8416ca7ddbb9bfa6f
allpaper/IWallpaperEngine.aidl
allpaper/WallpaperService.java
3be63c09309b21c01b535271625d4c39045690e5 21-Aug-2009 Dianne Hackborn <hackbod@google.com> Infrastructure for supporting wallpaper previews.

Various things that will allow us to show previews of wallpapers.
Also some fixes to animations across wallpapers.
allpaper/IWallpaperService.aidl
allpaper/WallpaperService.java
cbf15048240ecf460957ac3de98a7efbccbbb754 19-Aug-2009 Dianne Hackborn <hackbod@google.com> Don't call onSurfaceChanged() if nothing interesting has changed.
allpaper/WallpaperService.java
8df8b2b405c60cacf7a66c4e2ca078dd3d7ec7bd 18-Aug-2009 Dianne Hackborn <hackbod@google.com> Allow wallpapers to get touch events.
allpaper/WallpaperService.java
7341d7a104b47996445d069a695e155a07184606 14-Aug-2009 Dianne Hackborn <hackbod@google.com> More work on wallpapers.

- Do better about figuring out when to stop them and other related window
management.
- Fix problem where we were not redrawing the surface when the orientation
changed. This was the cause of the device hang.
allpaper/WallpaperService.java
72c82ab9923025a91bbabb32e56bfea27bfd083b 12-Aug-2009 Dianne Hackborn <hackbod@google.com> Report wallpaper offset to the wallpaper, use this in the image wallpaper.

Wallpapers can now be just the size of the screen, and get told when their
scroll position should change to do the updating on their own.
allpaper/WallpaperService.java
759a39e8d2a8b27ef07e102394629dce68aa186b 10-Aug-2009 Dianne Hackborn <hackbod@google.com> Live wallpapers become a little more real.

This adds a new theme for having a wallpaper, and fixes up the window manager
to do the right thing when transitioning between a windows with and without
wallpapers (between two windows with wallpapers is not yet addressed).

The wallpaper API now has callbacks to tell you when to start/stop animating.

Also fiddle the image wallpaper to be a little more interesting.
allpaper/WallpaperService.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 09-Aug-2009 Dianne Hackborn <hackbod@google.com> Very primitive wallpapers in a surface.

This is all of the basic pieces:

- The WallpaperService now creates a surface with the window manager for its
contents.
- There is a simple service that displays a bitmap.
- The wallpaper manager takes care of starting and stopping the service.
- The window manager knows about wallpaper windows and how to layer them with
the windows that want to be shown on top of wallpaper.

Lots and lots of issues remain, but at this point you can actually write a
wallpaper service, select it in the UI, and see it behind an activity.
allpaper/IWallpaperConnection.aidl
allpaper/IWallpaperEngine.aidl
allpaper/IWallpaperService.aidl
allpaper/WallpaperService.java
8cc6a5026aeb5cf9cc36529426fe0cc66714f5fb 06-Aug-2009 Dianne Hackborn <hackbod@google.com> First bit of wallpaper work.

This is mostly refactoring, adding a new WallpaperManager class that takes care
of the old wallpaper APIs on Context, so we don't need to pollute Context with
various new wallpaper APIs as they are needed. Also adds the first little
definition of a wallpaper service, which is not yet used or useful.
allpaper/IWallpaperService.aidl
allpaper/WallpaperService.java