Commit Graph

86790 Commits

Author SHA1 Message Date
Jeff Sharkey
e80ef951cb Merge "APIs for reviewing, listing volumes, hashes." 2018-11-01 20:25:21 +00:00
TreeHugger Robot
c1513cd4d4 Merge "Adds ContextHubIntentEvent class" 2018-11-01 19:45:42 +00:00
Dmitry Dementyev
16c8b72999 Merge "Document AccountManager method failures for locked user." 2018-11-01 18:23:37 +00:00
Arthur Ishiguro
a95fe31562 Adds ContextHubIntentEvent class
Helper class to parse Intent events.

Bug: 117612105
Test: Compile and flash, verify Intent events can be parsed
      using the class
Change-Id: I1267a1ce0cbbfd56ff9abb059ccc0117f060b7ff
2018-11-01 10:09:45 -07:00
Jeff Sharkey
0fc74ab226 APIs for reviewing, listing volumes, hashes.
As part of creating a "default gallery" app in Q, we need to define
the expected contract of how recently captured media can be reviewed
by the user.  Mirrored off the existing CAPTURE intents.

The Q storage work will start calculating SHA-1 hashes for each
media item to identify them in a stable way.

API to list all available volume names on the device, which includes
all attached shared storage devices, like SD cards.

Clean up all Uri creation to use Uri.Builder to ensure that incoming
volumeName values are escaped correctly.

Bug: 111268862
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: Ib7e5bf814b407f4d611767d2a5d26ccfe6d8d034
2018-11-01 11:07:55 -06:00
TreeHugger Robot
ae3c76df23 Merge "Each displays can have individual app transition." 2018-11-01 17:03:19 +00:00
Sunny Goyal
2daf457f4b Merge "Adding shared element transitions support in AppWidgets" 2018-11-01 16:19:12 +00:00
Olivier Gaillard
33c7610814 Merge "Add @CriticalNative to a few Binder methods." 2018-11-01 16:05:10 +00:00
TreeHugger Robot
bf4deb273b Merge "Make transitions Scene.getCurrentScene() public" 2018-11-01 14:34:08 +00:00
Risan
7c8506d6c7 Merge "Add a more flexible queryRecentDocuments" am: 627441218d am: a366edd78d
am: 729067376c

Change-Id: Ie1652bc9dfb413fe22962ee66024acd0d44ed127
2018-11-01 07:02:42 -07:00
Risan
729067376c Merge "Add a more flexible queryRecentDocuments" am: 627441218d
am: a366edd78d

Change-Id: Ib746205cd82634d0d7b821db94c8316e8260689c
2018-11-01 06:43:51 -07:00
Treehugger Robot
627441218d Merge "Add a more flexible queryRecentDocuments" 2018-11-01 13:11:09 +00:00
lumark
588a3e86a9 Each displays can have individual app transition.
Include below refectoring items to support per display AppTransition:

WMS / AM refectoring parts:
- Move AppTransition related stuff from WMS into DisplayContent.
- Move WMS.prepareAppTransition into DisplayWindowController.
- Move WMS.executeAppTransition to DisplayWindowController.
- Move ATM.isNextTransitionForward to DisplayWindowController.
- Move WMS.getPendingAppTransition to DisplayWindowController.
- Move WMS.overrideAppTransition like APIs to DisplayWindowController.
- Move ActivityRecord.applyOptionsLocked to AppContainerController.
- Support tracing all display's AppTransition status for
  DisplayContent.pendingLayoutChanges & window hierachy update.
- Modify logics for AppTransition related caller parts.
- Move WindowSurfacePlacer.handleAppTransitionReadyLocked related
  stuffs into added class AppTransitionController.

WM unit test parts:
- Add test case for verifying app transition state per display:
  - AppTransitionTests.testAppTransitionStateForMultiDisplay
  - AppTransitionTests.testCleanAppTransitionWhenTaskStackReparent
- Rename WindowSurfacePlacerTest to AppTransitionControllerTest since
  the test is related handle AppTransition flow.

Bug: 111362605
Test: go/wm-smoke
Test: atest ActivityManagerTransitionSelectionTests
Test: atest ActivityManagerMultiDisplayTests
Test: atest FrameworksServicesTests for DisplayContent / AppTransition
      related tests.
Change-Id: Ic1793aa794eb161bec31fda57847a6ba2ff4f84f
2018-11-01 21:10:37 +08:00
Andrey Kulikov
a4ae81857a Make transitions Scene.getCurrentScene() public
I pretty sure the getter method Scene.getCurrentScene() should be promoted to be public. This method is the only option for developers to understand is the sceneRoot already in the scene they need. Otherwise they have to introduce their own states and sync it with all scene changes which is more error-prone. To make it simpler to developers we can just make the method public. As an example of usage:

void displayMessages(List<Message> messages) {
    if (!messages.isEmpty()) {
        if (Scene.getCurrentScene(root) != messagesScene) {
            TransitionManager.go(messagesScene);
            MyAnalytics.trackDisplayMessages();
            (... more initialization ... )
        }
        messagesView.display(messages);
    }
}

Test: added a cts test for getCurrentScene
Change in AndroidX: aosp/807055
Bug: 118720709
Change-Id: Ic90e3576a82b5ab9a88e38e396efd49875968011
2018-11-01 12:33:53 +00:00
Sergey Vasilinets
1e5b5d0326 Merge "Revert "APIs for reviewing, listing volumes, hashes."" 2018-11-01 12:08:34 +00:00
Sergey Vasilinets
07dfd0a185 Revert "APIs for reviewing, listing volumes, hashes."
This reverts commit b7634f49ae.

Reason for revert: docs build was broken https://android-build.googleplex.com/builds/submitted/5104251/sdk_phone_armv7-sdk/latest/view/logs/build_error.log

Bug: 111268862
Change-Id: I95967186def8a3c81e7a2e0e2915d4280cd78af4
2018-11-01 12:06:56 +00:00
TreeHugger Robot
1b11fcc9c9 Merge "Extract IMM internal flags into StartInputFlags" 2018-11-01 09:09:15 +00:00
Luke Huang
13801b90e2 Merge "interface-related commands porting" am: 808c2fa747 am: 21fecd5957
am: f1fba3e8fd

Change-Id: I7a44b6e8521dd2a852bbd7b4e07599df8951f7b2
2018-11-01 00:46:40 -07:00
Luke Huang
f1fba3e8fd Merge "interface-related commands porting" am: 808c2fa747
am: 21fecd5957

Change-Id: Iab8092b55399397d9e9f2333ce358964562daed7
2018-11-01 00:31:30 -07:00
Luke Huang
808c2fa747 Merge "interface-related commands porting" 2018-11-01 07:09:54 +00:00
Yohei Yukawa
35fa6d581e Extract IMM internal flags into StartInputFlags
This is a mechanical refactoring like we did to split
InputMethodClient for Bug 118040692.

So-called "controlFlags" in InputMethodManager (IMM) was originally
introduced for IMM#startInput()/windowGainedFocus() [1] to carry
additional client information then reused when we unify startInput()
and windowGainedFocus() into startInputOrWindowGainedFocus() [2].

This CL mechanically moves the location where those flags are defined,
from InputMethodManager.java to a newly created file
StartInputFlags.java.

This is still just a mechanical refacotring / renaming.  There should
be no user-visible behavior change.

 [1]: Icb58bef75ef4bf9979f3e2ba88cea20db2e2c3fb
      7663d80f6b
 [2]: I56934f18e30d90fcdf77bcbb0c35a92a5feb1b82
      05c25f8a3a

Test: atest CtsInputMethodTestCases CtsInputMethodServiceHostTestCases
Test: atest FrameworksCoreTests:com.android.internal.inputmethod.InputMethodDebugTest
Change-Id: If5a4810dece852edcff0d1119463711249bb7ef2
2018-10-31 22:56:41 -07:00
Varun Shah
d7f381524d Merge "Exposes certain Settings fields as SystemApi for SUW." 2018-11-01 00:36:41 +00:00
Risan
6a4a8f6046 Add a more flexible queryRecentDocuments
The existing queryRecentDocuments have a hard limit 64. However, case
like ARC++ wishes to have a more flexible limit that can be passed as an
extra parameter. This new API will gracefully degrade to the old API to
maintain backward compatibility with old providers.

Bug: 111288304
Test: manual test (patched the MediaDocumentsProvider, and test calling
the new API):
1. Test that passing Bundle with QUERY_ARG_LIMIT=5 is honored and
returned is limited to 5.
2. Test that passing null will release the limit to default 64.
3. Test that removing MediaProvider implementation for new method and
implement the old method will automatically redirect the call to old
method (backward compatible with old providers).

Change-Id: I37b1785b94f3e9cf09128fbf1e8779a4447fe7a9
2018-10-31 23:30:35 +00:00
Jeff Sharkey
b7634f49ae APIs for reviewing, listing volumes, hashes.
As part of creating a "default gallery" app in Q, we need to define
the expected contract of how recently captured media can be reviewed
by the user.  Mirrored off the existing CAPTURE intents.

The Q storage work will start calculating SHA-1 hashes for each
media item to identify them in a stable way.

API to list all available volume names on the device, which includes
all attached shared storage devices, like SD cards.

Clean up all Uri creation to use Uri.Builder to ensure that incoming
volumeName values are escaped correctly.

Bug: 111268862
Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore*
Change-Id: I460593466d85ff052fd157d8fd784e7ac5b25d78
2018-10-31 21:27:04 +00:00
TreeHugger Robot
2c87f2ead8 Merge "Add an intent to launch the app permission usage screen." 2018-10-31 19:28:03 +00:00
Andrey Kulikov
4b9665df20 Merge "Improve platform TransitionSet behavior" 2018-10-31 18:35:16 +00:00
TreeHugger Robot
f969016bb7 Merge "Only adds hidden app detail for normal apps" 2018-10-31 18:22:48 +00:00
TreeHugger Robot
a478864768 Merge "Remove deprecated codes around TextClassifier" 2018-10-31 16:50:15 +00:00
TreeHugger Robot
2406e8ffc2 Merge changes Ib84292ca,I3411cb15,I60dfac31
* changes:
  Sends PendingIntent events
  Implements register/unregisterIntent methods
  Modifies concurrency handling in ContextHubClientBroker
2018-10-31 16:42:49 +00:00
Patrick Baumann
1f9b8850a2 Only adds hidden app detail for normal apps
The new hidden app detail activity was being added to all packages being
installed, even static shared libraries, which may not have any
activities and which we do not want to surface to the user in launcher.

Change-Id: I80e7d379abed04f2464d1dc7e8b75456e43063f4
Fixes: 118145903
Test: atest android.os.cts.StaticSharedLibsHostTests
2018-10-31 15:51:02 +00:00
Andrey Kulikov
c5dede2bca Improve platform TransitionSet behavior
1) Allow override values for a children of TransitionSet. For example for usages like this:
TransitionSet set = new TransitionSet().setDuration(300);
Fade fade = new Fade();
set.addTransition(fade);
fade.setDuration(100);
The result duration applied for fade transition is still 300. And it breaks all the flexibility of configuring sets.
The reason of it is clone() method which will be executed in beginDelayedTransition. And as part of clone() implementation of TransitionSet the children will be re-added to the new cloned set and set's duration will be re-applied again. To fix it I changed how we add transitions into set in clone().
2) Recently we had a bug about TransitionSet will crash during inflation if we provide duration for it via xml. I fixed similar issue for applying a path motion.

Test: added new tests for both issues
Change in AndroidX: aosp/803493
Bug: 64644617

Change-Id: If205845a83e29d49f8cced8a53d9f56a4ad740aa
2018-10-31 14:32:26 +00:00
TreeHugger Robot
316902da9b Merge "Add get/setExtras to TextClassification" 2018-10-31 12:24:30 +00:00
Tony Mak
1bae53ccc7 Merge "Introduce TextClassifier.suggestConversationActions" 2018-10-31 11:46:36 +00:00
Junyu Lai
74d5f7f24a Merge "Fix negative uid stats caused by 464xlat adjust when eBPF is on." am: 0d63da86e2 am: d62c2baa6d
am: cadfe44e05

Change-Id: I9d0d8b67ed0159ba2a71059620ebe5698eb79ccb
2018-10-30 19:56:01 -07:00
Junyu Lai
cadfe44e05 Merge "Fix negative uid stats caused by 464xlat adjust when eBPF is on." am: 0d63da86e2
am: d62c2baa6d

Change-Id: I3ee791e4b6fdd9d508807810183dc02c69bd2c0b
2018-10-30 19:46:18 -07:00
Junyu Lai
0d63da86e2 Merge "Fix negative uid stats caused by 464xlat adjust when eBPF is on." 2018-10-31 02:20:57 +00:00
Michael Wachenschwanz
6b5d06fe4d Merge changes from topic "UsageSessionTimers"
* changes:
  Add SystemApi for registering Usage Session Observers in UsageStats
  Refactor AppTimeLimitController for Session Observers
2018-10-31 00:35:39 +00:00
Varun Shah
76c8e68e74 Exposes certain Settings fields as SystemApi for SUW.
User Setup related fields in Settings indicating the setup
personalization state are now exposed.

Global Settings fields indicating whether the device is in demo mode,
a password is required to decrypt the device, and if mobile data is
enabled for provisioning are now exposed.

Various Secure Settings fields are also now exposed. They indicate
information about  doze, user setup information, lock screen
notification settings, assist gesture setup, and whether a suggested
action was completed.

All of the exposed fields require the WRITE_SECURE_SETTINGS permission.

Bug: 116689780
Test: manual (run setup wizard)
Change-Id: If8a96cca216b1d3e3b9329a3f4695caf9f3f248a
2018-10-30 17:18:44 -07:00
Eugene Susla
f4bebfea9f Merge "Adjust default app op behavior based on feature state" 2018-10-30 22:11:24 +00:00
Dmitry Dementyev
16d697576b Document AccountManager method failures for locked user.
Bug: 118700914
Test: N/A
Change-Id: I5f4f25c7c791f8ac0bf0037f0b370e021ee5a652
2018-10-30 14:56:53 -07:00
sqian
bf916cd022 Merge "Change package to component for Setting's default call redirection service" am: f67ece13ad am: a6bf55bcc6
am: 5cfa939ba0

Change-Id: Ic799f4b0e42aad5f9446478a1954555b9afbc689
2018-10-30 13:25:37 -07:00
sqian
5cfa939ba0 Merge "Change package to component for Setting's default call redirection service" am: f67ece13ad
am: a6bf55bcc6

Change-Id: Ia1d7455d2663c2942dfb298e9222e6c2b8d98529
2018-10-30 13:10:46 -07:00
Phil Weaver
1b4ea3a11a Merge "Make performAccessibilityShortcut a SystemAPI" 2018-10-30 20:05:28 +00:00
Treehugger Robot
f67ece13ad Merge "Change package to component for Setting's default call redirection service" 2018-10-30 19:06:55 +00:00
Tony Mak
d6f3fb46c6 Add get/setExtras to TextClassification
Test: TextClassificationTest / TextClassifierValueObjectsTest

BUG: 118690735

Change-Id: I19dba3a3f6c1b14a871b33b9ffb94e0f4de58ac2
2018-10-30 18:38:50 +00:00
Haoyu Zhang
9b74c07517 Merge "Fix getLineRight()/getLineLeft() may compute leadingMargin twice" 2018-10-30 18:16:44 +00:00
Phil Weaver
27beee50d3 Make performAccessibilityShortcut a SystemAPI
Also create a new MANAGE_ACCESSIBILITY permission to
perform the shortcut.

Bug: 116118615
Test: make, activate accessibility shortcut
Change-Id: Ic65a0cdf7393429e14cb98f4fb0734d20069b05a
2018-10-30 10:10:41 -07:00
Jon Boekenoogen
adb49c0031 Merge "Fix ClassCastException in 2nd phase resolution." 2018-10-30 17:08:42 +00:00
Jeff Sharkey
b8affbd14f Merge "Converge towards consistent modes API." 2018-10-30 16:56:35 +00:00
Tony Mak
c9d31e2752 Introduce TextClassifier.suggestConversationActions
Example usage:
// App side
ConversationAction.TypeConfig typeConfig =
            new ConversationAction.TypeConfig.Builder().setIncludedTypes(
                    Collections.singletonList(ConversationAction.TYPE_TEXT_REPLY)).build();
ConversationAction.Message message =
        ConversationAction.Message.Builder().setText("How are you?").build();
ConversationAction.Request request =
        new ConversationAction.Request.Builder(
                Collections.singletonList(message), HINT_FOR_IN_APP)
                .setTypeConfig(typeConfig)
                .build();
List<ConversationAction> conversationActions =
        textClassifier.suggestConversationActions(request).getConversationActions();
for (ConversationAction conversationAction : conversationActions) {
    // 1. Use the RemoteAction directly (if available)
    RemoteAction actions= conversationAction.getActions();

    // 2. Use the parsed action types and entities.
    String type = conversationAction.getType();
    ConversationAction.Entities entities = conversationAction.getEntities();
}

// In the TextClassificationService side:
ConversationAction.Entities entities = new ConversationAction.Entities.Builder().setReplies(Arrays.asList("I am good.", ":(", ":)")).build();

ConversationAction conversationAction = new ConversationAction.Builder(
        ConversationAction.TYPE_TEXT_REPLY).setEntities(entities).build();

BUG: 111437455
BUG: 111406942

Test: atest cts/tests/tests/view/src/android/view/textclassifier/cts/*cts/tests/tests/view/src/android/view/textclassifier/cts/TextClassificationManagerTest.java
Test: cts/tests/tests/view/src/android/view/textclassifier/cts/ConversationActionsTest.java

Change-Id: Ie8639f93f88336ecdfda602ce14cd8ca578c092a
2018-10-30 14:50:28 +00:00