Commit Graph

52 Commits

Author SHA1 Message Date
Chris Li
e3b0391814 Merge "Update snapshot fade out animation" into sc-v2-dev 2021-09-25 00:03:41 +00:00
Chris Li
2a332e4a2b Update snapshot fade out animation
Based on the UX feedback:
  Delay: 30ms
  Duration: 80ms
  Easing: linear

Bug: 196173550
Test: Test with demo app shopping mode
Change-Id: I1eac73ba71f6128a54e00b25674ff731695a3dc9
2021-09-24 13:56:10 +08:00
Chris Li
a09442c099 Don't offset snapshot surface position
The snapshot surface will be offset with its parent, so no need to
offset itself.

Bug: 196173550
Test: test with demo app on click back from split to split.
Change-Id: I1c65bf2e4b1b8c489ad7fe5eec1418707d590d13
2021-09-24 11:27:46 +08:00
Diego Vela
322a5aee69 Update Reference implementation for window-extensions.
Update reference implementation for window-extensions.

Bug: 200716579
Test: manual
Change-Id: Iabcab8b2aba45d24ebcde825c26681079999d81c
2021-09-22 20:12:16 -07:00
Andrii Kulian
00af00c414 Add RTL support in split activity organizer
Bug: 190433398
Test: Change locale to RLT, test in demo app
Change-Id: I941020c422d4fdf5bcb1a4f03f6fbd8b7aef30c3
2021-09-22 14:58:44 -07:00
Andrii Kulian
47a107ad9a Deduplicate SplitInfo states from sidecar
Also make sure that the split info is updated after an activity is
appeared on the client side.

Bug: 199144146
Test: Manual, using the test app
Change-Id: I11e6dd9d1f55c107aaf40aed4d25b6b8fff7b9ca
2021-09-22 14:57:31 -07:00
Andrii Kulian
f48aff4251 Update extensions embedding component package
to match the package name in AndroidX.

Bug: 190433398
Test: Manual, using demo application
Change-Id: I985f8f95d6f0098bdadd53e204cb65d8f53c96bd
2021-09-22 14:56:34 -07:00
Andrii Kulian
7d93e0e544 Update reference WM layout component interface
Moved to androidx.window.extensions.layout package.
Removed ExtensionProvider.
Updated method signatures.

Bug: 190433972
Test: Manual, using the sample app from AndroidX
Change-Id: I6c98ced7b447f231455723a8dc601a46653a48de
2021-09-22 14:55:37 -07:00
Chris Li
1e0e7a6848 Add animation for TASK_FRAGMENT_CHANGE transition
Bug: 196173550
Test: test with demo app
Change-Id: I2f2b9450ceefa60020707a3dd7d168c90ed33f31
2021-09-21 08:44:21 +08:00
Chris Li
211d6cf754 Handle remote animation for split API
Use the default app open/close animation.
TODO:
1. Handle two TaskFragment open/close as one
2. Handle change transition based on the new motion design

Bug: 196173550
Test: test with demo app
Change-Id: I7b446840270edfc3c9e3fe188585b2cd839fa9f1
2021-09-21 08:26:49 +08:00
Charles Chen
3d7ad43140 Promote #setAdjacentTaskFragment to TestApi
Also rename TaskFragmentAdjacentOptions to TaskFragmentAdjacentParams to
make metalava happy.

Test: build & run
Bug: 192442647

Change-Id: Iab256ce8c745635a51834f44e72493e204224f36
2021-09-10 17:52:56 +08:00
Louis Chang
c08fc30d0e Merge "Not removing primary TaskFragment when clear task" into sc-v2-dev 2021-09-09 13:32:57 +00:00
Louis Chang
c5024fc2b4 Not removing primary TaskFragment when clear task
Placeholder activity was finished while starting the
task root activity from launcher because the task
root activity was set as singleTask launch mode.
Meanwhile, the primary TaskFragment was also removed
because of the split-rule finishPrimaryWithSecondary.

Sending the information of whether the last activity
on the TaskFragment was finished due to launch other
activity to client. So that the organizer can decide
whether the primary TaskFragment should removed.

Bug: 196179714
Test: relaunch singleTask activity with placeholder

Change-Id: I9a0369285adfbdef1edc5a7f2af944ec5b434566
2021-09-09 15:09:17 +08:00
Louis Chang
2918f63c31 Defer TaskFragment removal until appeared
Exception was throw because a TaskFragment was finished before
onTaskFragmentAppeared was called.

Bug: 198361315
Test: launch Settings with WIP CLs listed in the bug
Change-Id: Id794b192cd0db21c00803166358712cdf5e2a209
2021-09-07 14:56:29 +08:00
Louis Chang
4abf39e6da Merge "Finish the primary container while secondary exited" into sc-v2-dev 2021-09-03 04:59:16 +00:00
Louis Chang
542af13cf5 Finish the primary container while secondary exited
When finishing a placeholder activity, the secondary container was
clean up, and the primary activity was also finished. However, the
primary container didn't remove and therefore was expanded to
fullscreen before the activity within completely being removed.

Which resulted in TRANSIT_OLD_TASK_FRAGMENT_CHANGE transition
after commit 118428b merged.

Bug: 198228078
Test: finishing placeholder activity and back to launcher
Change-Id: I3d55f0be8c7f6ab3970450d7b90dd95f3cfdd463
2021-09-01 15:05:32 +08:00
Chris Li
ebdd22f73d Register remote animation in JetpackTaskFragmentOrganizer
Sample workflow with directly setting the surface position

Bug: 196173550
Test: test with demo app
Change-Id: I36851f1fa46c1dc1615bb00cc9df3299b5088fb4
2021-08-31 13:31:20 -07:00
Louis Chang
ef49a02edd Prevent activity being destroyed immediately if embedded
The embedded activity was destroyed immediately when being
finished because the next top activity was on the adjacent
TaskFragment and was already visible. Therefore, the finishing
animation was played before the organizer requested to
finish the activity on the adjacent TaskFragment.

Prevent the last activity of the embedded TaskFragment to
be removed immediately if the organizer requested to.

Bug: 189386466
Test: finish both activities on separate TaskFragments

Change-Id: I916eddc4dcf0de3bc7ed7264296f441d1b7bb726
2021-08-23 12:04:15 +08:00
Andrii Kulian
ce4afed050 Update split controller to latest extension interface
Bug: 190433398
Bug: 190433972
Test: Manual
Change-Id: I215bd5925f35c2a798b7f82ac8753d86cf9b594c
2021-08-16 20:24:48 -07:00
Louis Chang
484805fa4c Merge "Keeps the intercepted activity on the existing secondary container" into sc-v2-dev 2021-08-13 09:53:13 +00:00
Louis Chang
40fc6de5a7 Keeps the intercepted activity on the existing secondary container
When intercepting an activity start request, a new split pair
was always created and launch the activity to the side of the
caller activity.

This CL launches the activity on top of the caller activity
if the caller activity is already on the secondary container.

This is needed for the case that the activity is started
into a new Task, or new Task will be escaped from the current
host Task and be displayed in fullscreen.

However, the interception won't work if the activity is started
from another process.

Also adding logs for TaskFragment errors.

Bug: 194997356
Test: manually, start activity with sample app
Change-Id: I268c1dad191cdfdbf48cac84e18f1dfda761b0d3
2021-08-13 13:47:06 +08:00
Andrii Kulian
f45a464409 Finish existing secondary containers when starting to side
When a new activity is started to side of a primary container in an
existing split, finish the old secondary container by default to
replace it instead of putting on top.

Note that this rule only applies for new activity launches to side
via rules or dedicated APIs. If an activity is started regularly,
it would normally be placed in the existing secondary container on
top, not creating a new one and replacing.

Bug: 194996352
Test: Start to side from the primary container several times,
observe secondary container being replaced with subsequent launches.

Change-Id: If4439368a669c6252c97471f0e77286357285c9d
2021-08-12 17:26:55 -07:00
Louis Chang
5eff403fff Renaming to initial TaskFragment token
Also adding comments to explain that it could be changed after
creation.

Bug: 194860679
Test: wm presubmit
Change-Id: I72b099a6134701377a73cbe76bb9d0cb501aa507
2021-08-09 14:55:32 +08:00
Andrii Kulian
e82c67504d Delete dependent TaskFragments in the same transaction
When finishing the last activity in a container that has dependent
containers, make sure to delete those in addition to just finishing
activities. This will ensure that containers with activities from
different apps will be properly cleaned up.

Bug: 195108809
Test: Launch a container to side with 'finishSecondaryWithPrimary'
configuration, finish the primary container with swipe from side.
Test: Do the above for activities in different apps.

Change-Id: I746055fd02894d8221cace10d556992e2dba31b5
2021-08-04 21:25:23 -07:00
Andrii Kulian
94354a9a7f Intercept activity start requests in client organizer
This allows applying split rules to activity start requests for
different processes and covers APIs like 'startActivityAsUser',
not requiring app developers to use dedicated APIs to start to side
instead.

When the client organizer observes a new activity being started, it
creates a new TaskFragment first and modifies the activity start
options to target that container.

Bug: 194140227
Bug: 190433398
Test: Manual, using reference implementation and sample app.
Change-Id: Ice3de8ec725d327266ec38052129b4158608855e
2021-08-03 14:38:02 -07:00
Louis Chang
332036a29e Sending TaskFragment token to client for the launching activity
Activity#onCreate is called before receiving the TaskFragment
appeared event in the client process. So, the client split
controller created another split and resulted in unexpected
behaviors.

Bug: 194860679
Test: start activity to side
Test: wm presubmit

Change-Id: Iac34bd39376940c5c0224c8687ad9858a4190e20
2021-08-02 09:42:36 +08:00
Chris Li
36c3af87dc setAdjacentTaskFragments for paired TaskFragment
Bug: 190433129
Test: Tested with sample app
Change-Id: Ifa4cf3df77f053d2f5806290989329d3a2b47160
2021-07-30 13:39:15 -07:00
Andrii Kulian
ef81c4557f Merge "Avoid re-adding to existing split" into sc-v2-dev 2021-07-28 18:23:30 +00:00
Andrii Kulian
2fdc3d08b3 Merge "Use main thread executor in the split controller" into sc-v2-dev 2021-07-28 04:11:44 +00:00
Andrii Kulian
ea6e6633e1 Avoid re-adding to existing split
If an activity is re-created after configuration change, make sure
to check if it is not already in a split with an activity below
before creating a new one.

Bug: 190433398
Test: Manual
Change-Id: Ib2b87e3736d6331209be4934303b20717446807c
2021-07-27 19:53:50 -07:00
Andrii Kulian
b1d8c0c3c4 Merge "Notify split controller about activity configuration change" into sc-v2-dev 2021-07-28 01:52:21 +00:00
Andrii Kulian
541aed7253 Use main thread executor in the split controller
Running on non-main queue causes out-of-order issues.

Bug: 190433398
Test: Placehoder sample
Change-Id: If94d4778f9ba9ab2664fea904aac150c2b097734
2021-07-27 16:56:30 -07:00
Andrii Kulian
7d1040f716 Merge "Skip duplicate setBounds requests for task fragments" into sc-v2-dev 2021-07-27 16:21:25 +00:00
Andrii Kulian
8c3b7511ab Notify split controller about activity configuration change
Track activity configuration changes, so that split controller has
a chance to apply metrics-based rules like launching a placeholder.

Not using ComponentCallbacks here, since they are only triggered for
Application configuration changes, which might be problematic if
there are multiple running activities with different sizes. They are
also usually triggered before individual activity resources are
updated.

Also moved post-creation actions to onActivityPostCreated(), since
onActivityCreated() is called from the base implementation in
Activity#onCreate() and there is still a chance that app may perform
some actions after calling super in its override.

Bug: 194538838
Test: Configure a placeholder, launch in a small size, enlarge.
Change-Id: Ied55d5f920890fa554cdd66419235d61ab03b440
2021-07-26 16:07:16 -07:00
Andrii Kulian
d88f0effb2 Skip duplicate setBounds requests for task fragments
Only add task fragment bounds change requests if they differ
from the last values requested by organizer.

Bug: 190433398
Test: Manual, using the test app
Change-Id: Ia619465cbc923f048d3d11e47a3fe7d3ab3314e4
2021-07-26 16:01:04 -07:00
Charles Chen
9dfcf46ab9 Promote TaskFragment APIs to TestAPi
... to verify their behaviors in CTS
Also wraps ITaskFragmentOrganizer to TaskFragmentOrganizerToken
because we cannot make .aidl a TestApi.

Test: presubmit
Bug: 192442647

Change-Id: I848a33340449189af7d9d66a6468a9e397a0f53a
2021-07-26 16:13:20 +08:00
Louis Chang
ca43bb061b Providing caller's token when starting activity in TaskFragment
NEW_TASK flag was added by ATMS when #startActivityInTaskFragment
is called because the activity was started without source record.

Bug: 193846941
Test: starting CCT in sample app
Change-Id: Ida26034324f7ff761f1e688403d78959a01f010d
2021-07-23 11:14:35 +08:00
Andrii Kulian
85986bf974 Split activity organizer in WM Extensions
Reference implementation for the client-side organizer
for side-by-side split activity UI.

Bug: 190433398
Bug: 190432728
Bug: 190433500
Bug: 190433972
Bug: 191163577
Bug: 191163638
Test: Manual, using the sample in WM Jetpack
Change-Id: I27335d47f4f544e2b9f63c5daaac9bd1c272a89f
2021-07-20 20:31:10 -07:00
Andrii Kulian
7ae2cae674 Add base container classes for reference Jetpack organizer
- TaskFragmentContainer corresponds to a TaskFragment record.
- SplitContainer has a record of two containers combined in a split
  with a given rule.

Bug: 190433398
Test: Manual, using the reference implementation.
Change-Id: I54cd86d2047aac2fa392189ed355760b1a32b6c4
2021-07-20 17:46:55 -07:00
Chris Li
964d297792 Add default implementation of TaskFragmentOrganizer
Bug: 190433398
Test: N/A
Change-Id: I84fdba974ef308aebe19348fa76f565311e06f2e
2021-07-19 19:32:30 -07:00
Diego Vela
7dc16384da Update WindowManager Jetpack in SC
Update window-extensions aar.
Update window-sidecar aar.
Remove deprecated fields.

Bug: 173739071
Test: Manual build with extensions, set a device state 3
Test: Set a dislay feature to go horizontally and run sample app
Change-Id: I67f1b109aeb4202c7c531b074d2d6e89e1e8c831
2021-04-20 19:39:31 -07:00
Darryl L Johnson
7e607c173f Update sample Sidecar/Extension implementation to allow mapping system
device state to posture via a config.

This updates the sample Sidecar/Extension implementation for the WM
Jetpack Library to read the mapping of system DeviceState provided by
DeviceStateManager from a config and apply the translation to Jetpack
Posture when the device state changes.

Bug: 173428759
Bug: 181248887
Test: Manual - overlay config value on Jumbo and verify correct mapping
Test: ./gradlew window:window:test

Change-Id: I74d71a67e72976ade88122cd8eda5f16b2301c32
2021-03-19 04:48:19 -07:00
Darryl L Johnson
9171859f0e Seperate SettingsConfigProvider into producers.
This provides a clear separation between the data producing classes and
the core library class. It also allows seperating the logic in
SettingsConfigProvider into different producers that provide their data
from different sources (for ex, settings vs resources).

Bug: 173428759
Test: Manual - flash device and verify
Test: ./gradlew window:window:test

Change-Id: I111058ff7c3479bc53aede0b29de1e2e1c2ff91f
2021-03-19 04:48:07 -07:00
Bob Badour
8a6a2bce6c [LSC] Add LOCAL_LICENSE_KINDS to frameworks/base
Added SPDX-license-identifier-Apache-2.0 to:
  apct-tests/perftests/autofill/Android.bp
  apct-tests/perftests/blobstore/Android.bp
  apct-tests/perftests/core/Android.bp
  apct-tests/perftests/core/apps/overlay/Android.bp
  apct-tests/perftests/core/apps/reources_manager/Android.bp
  apct-tests/perftests/core/jni/Android.bp
  apct-tests/perftests/multiuser/Android.bp
  apct-tests/perftests/multiuser/apps/dummyapp/Android.bp
  apct-tests/perftests/packagemanager/Android.bp
  apct-tests/perftests/packagemanager/apps/query-all/Android.bp
  apct-tests/perftests/textclassifier/Android.bp
  apct-tests/perftests/utils/Android.bp
  apct-tests/perftests/windowmanager/Android.bp
  apex/Android.bp
  apex/blobstore/framework/Android.bp
  apex/blobstore/service/Android.bp
  apex/jobscheduler/framework/Android.bp
  apex/jobscheduler/service/Android.bp
  apex/media/Android.bp
  apex/media/aidl/Android.bp
  apex/media/framework/Android.bp
  cmds/am/Android.bp
  cmds/app_process/Android.bp
  cmds/appops/Android.bp
  cmds/appwidget/Android.bp
  cmds/backup/Android.bp
  cmds/bmgr/Android.bp
  cmds/bootanimation/Android.bp
  cmds/bu/Android.bp
  cmds/content/Android.bp
  cmds/dpm/Android.bp
  cmds/hid/Android.bp
  cmds/hid/jni/Android.bp
  cmds/idmap2/Android.bp
  cmds/ime/Android.bp
  cmds/incident/Android.bp
  cmds/incident_helper/Android.bp
  cmds/incidentd/Android.bp
  cmds/input/Android.bp
  cmds/interrupter/Android.bp
  cmds/locksettings/Android.bp
  cmds/pm/Android.bp
  cmds/requestsync/Android.bp
  cmds/screencap/Android.bp
  cmds/sm/Android.bp
  cmds/svc/Android.bp
  cmds/telecom/Android.bp
  cmds/uiautomator/Android.bp
  cmds/uiautomator/cmds/uiautomator/Android.bp
  cmds/uiautomator/instrumentation/Android.bp
  cmds/uiautomator/library/Android.bp
  cmds/vr/Android.bp
  cmds/wm/Android.bp
  config/Android.bp
  core/java/android/service/wallpaper/Android.bp
  core/jni/Android.bp
  core/sysprop/Android.bp
  core/tests/BroadcastRadioTests/Android.bp
  core/tests/ConnectivityManagerTest/Android.bp
  core/tests/PackageInstallerSessions/Android.bp
  core/tests/PlatformCompatFramework/Android.bp
  core/tests/bandwidthtests/Android.bp
  core/tests/benchmarks/Android.bp
  core/tests/bluetoothtests/Android.bp
  core/tests/bugreports/Android.bp
  core/tests/coretests/Android.bp
  core/tests/coretests/BinderDeathRecipientHelperApp/Android.bp
  core/tests/coretests/BinderProxyCountingTestApp/Android.bp
  core/tests/coretests/BinderProxyCountingTestService/Android.bp
  core/tests/coretests/BstatsTestApp/Android.bp
  core/tests/coretests/DisabledTestApp/Android.bp
  core/tests/coretests/EnabledTestApp/Android.bp
  core/tests/coretests/aidl/Android.bp
  core/tests/coretests/apks/Android.bp
  core/tests/coretests/apks/install/Android.bp
  core/tests/coretests/apks/install_bad_dex/Android.bp
  core/tests/coretests/apks/install_complete_package_info/Android.bp
  core/tests/coretests/apks/install_decl_perm/Android.bp
  core/tests/coretests/apks/install_jni_lib/Android.bp
  core/tests/coretests/apks/install_jni_lib_open_from_apk/Android.bp
  core/tests/coretests/apks/install_loc_auto/Android.bp
  core/tests/coretests/apks/install_loc_internal/Android.bp
  core/tests/coretests/apks/install_loc_sdcard/Android.bp
  core/tests/coretests/apks/install_loc_unspecified/Android.bp
  core/tests/coretests/apks/install_use_perm_good/Android.bp
  core/tests/coretests/apks/install_uses_feature/Android.bp
  core/tests/coretests/apks/install_verifier_bad/Android.bp
  core/tests/coretests/apks/install_verifier_good/Android.bp
  core/tests/coretests/apks/keyset/Android.bp
  core/tests/coretests/apks/locales/Android.bp
  core/tests/coretests/apks/overlay_config/Android.bp
  core/tests/coretests/apks/version/Android.bp
  core/tests/coretests/apks/version_nosys/Android.bp
  core/tests/featureflagtests/Android.bp
  core/tests/hdmitests/Android.bp
  core/tests/hosttests/test-apps/AutoLocTestApp/Android.bp
  core/tests/hosttests/test-apps/AutoLocVersionedTestApp_v1/Android.bp
  core/tests/hosttests/test-apps/AutoLocVersionedTestApp_v2/Android.bp
  core/tests/hosttests/test-apps/ExternalLocAllPermsTestApp/Android.bp
  core/tests/hosttests/test-apps/ExternalLocPermsFLTestApp/Android.bp
  core/tests/hosttests/test-apps/ExternalLocTestApp/Android.bp
  core/tests/hosttests/test-apps/ExternalLocVersionedTestApp_v1/Android.bp
  core/tests/hosttests/test-apps/ExternalLocVersionedTestApp_v2/Android.bp
  core/tests/hosttests/test-apps/ExternalSharedPerms/Android.bp
  core/tests/hosttests/test-apps/ExternalSharedPermsBT/Android.bp
  core/tests/hosttests/test-apps/ExternalSharedPermsDiffKey/Android.bp
  core/tests/hosttests/test-apps/ExternalSharedPermsFL/Android.bp
  core/tests/hosttests/test-apps/InternalLocTestApp/Android.bp
  core/tests/hosttests/test-apps/MultiDexLegacyTestServicesTests/Android.bp
  core/tests/hosttests/test-apps/NoLocTestApp/Android.bp
  core/tests/hosttests/test-apps/NoLocVersionedTestApp_v1/Android.bp
  core/tests/hosttests/test-apps/NoLocVersionedTestApp_v2/Android.bp
  core/tests/hosttests/test-apps/SharedUid/32/Android.bp
  core/tests/hosttests/test-apps/SharedUid/32/jni/Android.bp
  core/tests/hosttests/test-apps/SharedUid/64/Android.bp
  core/tests/hosttests/test-apps/SharedUid/64/jni/Android.bp
  core/tests/hosttests/test-apps/SharedUid/dual/Android.bp
  core/tests/hosttests/test-apps/SharedUid/dual/jni/Android.bp
  core/tests/hosttests/test-apps/SharedUid/java_only/Android.bp
  core/tests/hosttests/test-apps/SimpleTestApp/Android.bp
  core/tests/hosttests/test-apps/UpdateExtToIntLocTestApp_v1_ext/Android.bp
  core/tests/hosttests/test-apps/UpdateExtToIntLocTestApp_v2_int/Android.bp
  core/tests/hosttests/test-apps/UpdateExternalLocTestApp_v1_ext/Android.bp
  core/tests/hosttests/test-apps/UpdateExternalLocTestApp_v2_none/Android.bp
  core/tests/hosttests/test-apps/VersatileTestApp_Auto/Android.bp
  core/tests/hosttests/test-apps/VersatileTestApp_External/Android.bp
  core/tests/hosttests/test-apps/VersatileTestApp_Internal/Android.bp
  core/tests/hosttests/test-apps/VersatileTestApp_None/Android.bp
  core/tests/mockingcoretests/Android.bp
  core/tests/notificationtests/Android.bp
  core/tests/overlaytests/device/Android.bp
  core/tests/overlaytests/device/test-apps/AppOverlayOne/Android.bp
  core/tests/overlaytests/device/test-apps/AppOverlayTwo/Android.bp
  core/tests/overlaytests/device/test-apps/FrameworkOverlay/Android.bp
  core/tests/overlaytests/host/Android.bp
  core/tests/overlaytests/remount/Android.bp
  core/tests/overlaytests/remount/test-apps/Overlay/Android.bp
  core/tests/overlaytests/remount/test-apps/SharedLibrary/Android.bp
  core/tests/overlaytests/remount/test-apps/SharedLibraryOverlay/Android.bp
  core/tests/overlaytests/remount/test-apps/Target/Android.bp
  core/tests/packagemanagertests/Android.bp
  core/tests/privacytests/Android.bp
  core/tests/screenshothelpertests/Android.bp
  core/tests/systemproperties/Android.bp
  core/tests/utillib/Android.bp
  core/tests/utiltests/Android.bp
  core/tests/utiltests/jni/Android.bp
  core/tests/uwbtests/Android.bp
  core/xsd/Android.bp
  core/xsd/vts/Android.bp
  data/etc/Android.bp
  data/etc/car/Android.bp
  data/fonts/Android.bp
  data/keyboards/Android.mk
  drm/jni/Android.bp
  errorprone/Android.bp
  graphics/proto/Android.bp
  keystore/Android.bp
  keystore/tests/Android.bp
  libs/WindowManager/Jetpack/Android.bp
  libs/WindowManager/Shell/Android.bp
  libs/WindowManager/Shell/tests/Android.bp
  libs/androidfw/Android.bp
  libs/androidfw/fuzz/resourcefile_fuzzer/Android.bp
  libs/hostgraphics/Android.bp
  libs/incident/Android.bp
  libs/input/Android.bp
  libs/input/tests/Android.bp
  libs/protoutil/Android.bp
  libs/services/Android.bp
  libs/storage/Android.bp
  libs/usb/tests/AccessoryChat/Android.bp
  libs/usb/tests/AccessoryChat/accessorychat/Android.bp
  location/lib/Android.bp
  location/tests/Android.bp
  location/tests/locationtests/Android.bp
  lowpan/tests/Android.bp
  media/Android.bp
  media/java/Android.bp
  media/java/android/media/tv/tunerresourcemanager/Android.bp
  media/jni/Android.bp
  media/jni/audioeffect/Android.bp
  media/jni/soundpool/Android.bp
  media/jni/soundpool/tests/Android.bp
  media/lib/remotedisplay/Android.bp
  media/lib/signer/Android.bp
  media/lib/tvremote/Android.bp
  media/lib/tvremote/tests/Android.bp
  media/mca/filterfw/Android.bp
  media/mca/filterfw/native/Android.bp
  media/mca/filterpacks/Android.bp
  media/mca/samples/CameraEffectsRecordingSample/Android.bp
  media/mca/tests/Android.bp
  media/native/midi/Android.bp
  media/packages/BluetoothMidiService/Android.bp
  media/packages/BluetoothMidiService/tests/unit/Android.bp
  media/tests/AudioPolicyTest/Android.bp
  media/tests/CameraBrowser/Android.bp
  media/tests/EffectsTest/Android.bp
  media/tests/MediaDump/Android.bp
  media/tests/MediaFrameworkTest/Android.bp
  media/tests/MediaRouter/Android.bp
  media/tests/MtpTests/Android.bp
  media/tests/ScoAudioTest/Android.bp
  media/tests/SoundPoolTest/Android.bp
  media/tests/TunerTest/Android.bp
  media/tests/audiotests/Android.bp
  media/tests/players/Android.bp
  mime/Android.bp
  native/android/Android.bp
  native/graphics/jni/Android.bp
  native/webview/loader/Android.bp
  nfc-extras/Android.bp
  nfc-extras/tests/Android.bp
  packages/AppPredictionLib/Android.bp
  packages/BackupEncryption/Android.bp
  packages/BackupEncryption/test/robolectric-integration/Android.bp
  packages/BackupEncryption/test/robolectric/Android.bp
  packages/BackupEncryption/test/unittest/Android.bp
  packages/BackupRestoreConfirmation/Android.bp
  packages/CarSystemUI/Android.bp
  packages/CarrierDefaultApp/Android.bp
  packages/CarrierDefaultApp/tests/unit/Android.bp
  packages/CompanionDeviceManager/Android.bp
  packages/Connectivity/framework/Android.bp
  packages/Connectivity/service/Android.bp
  packages/CtsShim/Android.bp
  packages/CtsShim/build/Android.bp
  packages/CtsShim/build/jni/Android.bp
  packages/DynamicSystemInstallationService/Android.bp
  packages/DynamicSystemInstallationService/tests/Android.bp
  packages/EasterEgg/Android.bp
  packages/EncryptedLocalTransport/Android.bp
  packages/ExtShared/Android.bp
  packages/ExternalStorageProvider/Android.bp
  packages/ExternalStorageProvider/tests/Android.bp
  packages/FakeOemFeatures/Android.bp
  packages/FusedLocation/Android.bp
  packages/InputDevices/Android.bp
  packages/LocalTransport/Android.bp
  packages/PackageInstaller/Android.bp
  packages/PrintRecommendationService/Android.bp
  packages/PrintSpooler/Android.bp
  packages/PrintSpooler/jni/Android.bp
  packages/PrintSpooler/tests/outofprocess/Android.bp
  packages/SettingsLib/ActionBarShadow/Android.bp
  packages/SettingsLib/ActionButtonsPreference/Android.bp
  packages/SettingsLib/AdaptiveIcon/Android.bp
  packages/SettingsLib/Android.bp
  packages/SettingsLib/AppPreference/Android.bp
  packages/SettingsLib/BarChartPreference/Android.bp
  packages/SettingsLib/DisplayDensityUtils/Android.bp
  packages/SettingsLib/EntityHeaderWidgets/Android.bp
  packages/SettingsLib/HelpUtils/Android.bp
  packages/SettingsLib/LayoutPreference/Android.bp
  packages/SettingsLib/ProgressBar/Android.bp
  packages/SettingsLib/RadioButtonPreference/Android.bp
  packages/SettingsLib/RestrictedLockUtils/Android.bp
  packages/SettingsLib/SchedulesProvider/Android.bp
  packages/SettingsLib/SearchProvider/Android.bp
  packages/SettingsLib/SearchWidget/Android.bp
  packages/SettingsLib/SettingsSpinner/Android.bp
  packages/SettingsLib/SettingsTheme/Android.bp
  packages/SettingsLib/Tile/Android.bp
  packages/SettingsLib/Utils/Android.bp
  packages/SettingsLib/search/Android.bp
  packages/SettingsLib/tests/integ/Android.bp
  packages/SettingsLib/tests/robotests/Android.bp
  packages/SettingsProvider/Android.bp
  packages/SharedStorageBackup/Android.bp
  packages/Shell/Android.bp
  packages/Shell/tests/Android.bp
  packages/SimAppDialog/Android.bp
  packages/SoundPicker/Android.bp
  packages/StatementService/Android.bp
  packages/SystemUI/Android.bp
  packages/SystemUI/plugin/Android.bp
  packages/SystemUI/plugin/ExamplePlugin/Android.bp
  packages/SystemUI/plugin_core/Android.bp
  packages/SystemUI/shared/Android.bp
  packages/VpnDialogs/Android.bp
  packages/WAPPushManager/Android.bp
  packages/WAPPushManager/tests/Android.bp
  packages/WallpaperBackup/Android.bp
  packages/WallpaperCropper/Android.bp
  packages/overlays/Android.mk
  packages/overlays/tests/Android.bp
  packages/services/PacProcessor/Android.bp
  packages/services/PacProcessor/jni/Android.bp
  packages/services/Proxy/Android.bp
  proto/Android.bp
  rs/jni/Android.mk
  samples/demo/haptic-assessment/Android.bp
  sax/tests/saxtests/Android.bp
  services/Android.bp
  services/accessibility/Android.bp
  services/appprediction/Android.bp
  services/appwidget/Android.bp
  services/autofill/Android.bp
  services/backup/Android.bp
  services/backup/backuplib/Android.bp
  services/companion/Android.bp
  services/contentcapture/Android.bp
  services/contentsuggestions/Android.bp
  services/core/Android.bp
  services/core/java/com/android/server/vcn/Android.bp
  services/core/jni/Android.bp
  services/core/xsd/Android.bp
  services/core/xsd/vts/Android.bp
  services/coverage/Android.bp
  services/devicepolicy/Android.bp
  services/incremental/Android.bp
  services/midi/Android.bp
  services/net/Android.bp
  services/people/Android.bp
  services/print/Android.bp
  services/profcollect/Android.bp
  services/restrictions/Android.bp
  services/robotests/Android.bp
  services/robotests/backup/Android.bp
  services/systemcaptions/Android.bp
  services/tests/PackageManagerComponentOverrideTests/Android.bp
  services/tests/PackageManagerServiceTests/host/Android.bp
  services/tests/PackageManagerServiceTests/host/test-apps/Android.bp
  services/tests/mockingservicestests/Android.bp
  services/tests/rescueparty/Android.bp
  services/tests/servicestests/Android.bp
  services/tests/servicestests/aidl/Android.bp
  services/tests/servicestests/apks/Android.bp
  services/tests/servicestests/apks/install-split-base/Android.bp
  services/tests/servicestests/apks/install-split-feature-a/Android.bp
  services/tests/servicestests/apks/install_intent_filters/Android.bp
  services/tests/servicestests/apks/install_uses_sdk/Android.bp
  services/tests/servicestests/test-apps/ConnTestApp/Android.bp
  services/tests/servicestests/test-apps/JobTestApp/Android.bp
  services/tests/servicestests/test-apps/PackageParserApp/Android.bp
  services/tests/servicestests/test-apps/PackageParsingTestManifests/Android.bp
  services/tests/servicestests/test-apps/SimpleServiceTestApp/Android.bp
  services/tests/servicestests/test-apps/SuspendTestApp/Android.bp
  services/tests/shortcutmanagerutils/Android.bp
  services/tests/uiservicestests/Android.bp
  services/tests/wmtests/Android.bp
  services/usage/Android.bp
  services/usb/Android.bp
  services/voiceinteraction/Android.bp
  services/wifi/Android.bp
  startop/apps/test/Android.bp
  startop/iorap/Android.bp
  startop/iorap/functional_tests/Android.bp
  startop/iorap/stress/Android.bp
  startop/iorap/tests/Android.bp
  startop/view_compiler/Android.bp
  startop/view_compiler/dex_builder_test/Android.bp
  test-base/hiddenapi/Android.bp
  test-mock/Android.bp
  test-runner/tests/Android.bp
  tests/AccessibilityEventsLogger/Android.bp
  tests/AccessoryDisplay/common/Android.bp
  tests/AccessoryDisplay/sink/Android.bp
  tests/AccessoryDisplay/source/Android.bp
  tests/ActivityManagerPerfTests/stub-app/Android.bp
  tests/ActivityManagerPerfTests/test-app/Android.bp
  tests/ActivityManagerPerfTests/tests/Android.bp
  tests/ActivityManagerPerfTests/utils/Android.bp
  tests/ActivityTests/Android.bp
  tests/ActivityViewTest/Android.bp
  tests/AmSlam/Android.bp
  tests/ApkVerityTest/Android.bp
  tests/ApkVerityTest/ApkVerityTestApp/Android.bp
  tests/ApkVerityTest/block_device_writer/Android.bp
  tests/AppLaunch/Android.bp
  tests/AppLaunchWear/Android.bp
  tests/AppResourcesLoaders/Android.bp
  tests/AppResourcesLoaders/Overlay/Android.bp
  tests/Assist/Android.bp
  tests/AutoVerify/app1/Android.bp
  tests/AutoVerify/app2/Android.bp
  tests/AutoVerify/app3/Android.bp
  tests/AutoVerify/app4/Android.bp
  tests/BackgroundDexOptServiceIntegrationTests/Android.bp
  tests/BandwidthTests/Android.bp
  tests/BatteryWaster/Android.bp
  tests/BiDiTests/Android.bp
  tests/BlobStoreTestUtils/Android.bp
  tests/BootImageProfileTest/Android.bp
  tests/BrowserPowerTest/Android.bp
  tests/Camera2Tests/SmartCamera/SimpleCamera/jni/Android.bp
  tests/CameraPrewarmTest/Android.bp
  tests/Codegen/Android.bp
  tests/Compatibility/Android.bp
  tests/CoreTests/android/Android.bp
  tests/DataIdleTest/Android.bp
  tests/DozeTest/Android.bp
  tests/DpiTest/Android.bp
  tests/DynamicCodeLoggerIntegrationTests/Android.mk
  tests/FeatureSplit/base/Android.bp
  tests/FeatureSplit/feature1/Android.bp
  tests/FeatureSplit/feature2/Android.bp
  tests/FixVibrateSetting/Android.bp
  tests/FlickerTests/Android.bp
  tests/FlickerTests/test-apps/Android.bp
  tests/FlickerTests/test-apps/flickerapp/Android.bp
  tests/FrameworkPerf/Android.bp
  tests/GamePerformance/Android.bp
  tests/GridLayoutTest/Android.bp
  tests/HierarchyViewerTest/Android.bp
  tests/HugeBackup/Android.bp
  tests/HwAccelerationTest/Android.bp
  tests/Internal/Android.bp
  tests/JankBench/Android.bp
  tests/JobSchedulerPerfTests/Android.bp
  tests/JobSchedulerTestApp/Android.bp
  tests/LargeAssetTest/Android.bp
  tests/LegacyAssistant/Android.bp
  tests/LocalizationTest/Android.bp
  tests/LocationTracker/Android.bp
  tests/LotsOfApps/Android.bp
  tests/LowStorageTest/Android.bp
  tests/ManagedProfileLifecycleStressTest/Android.bp
  tests/ManagedProfileLifecycleStressTest/app/DummyDPC/Android.bp
  tests/MemoryUsage/Android.bp
  tests/MirrorSurfaceTest/Android.bp
  tests/NativeProcessesMemoryTest/Android.bp
  tests/NetworkSecurityConfigTest/Android.bp
  tests/NullHomeTest/Android.bp
  tests/OdmApps/Android.bp
  tests/OdmApps/app/Android.bp
  tests/OdmApps/priv-app/Android.bp
  tests/OneMedia/Android.bp
  tests/PackageWatchdog/Android.bp
  tests/PlatformCompatGating/Android.bp
  tests/PlatformCompatGating/test-rules/Android.bp
  tests/ProtoInputStreamTests/Android.bp
  tests/RemoteDisplayProvider/Android.bp
  tests/RenderThreadTest/Android.bp
  tests/RollbackTest/Android.bp
  tests/SerialChat/Android.bp
  tests/ServiceCrashTest/Android.bp
  tests/SharedLibrary/client/Android.bp
  tests/SharedLibrary/lib/Android.bp
  tests/ShowWhenLockedApp/Android.bp
  tests/SmokeTest/Android.bp
  tests/SmokeTest/tests/Android.bp
  tests/SmokeTestApps/Android.bp
  tests/SoundTriggerTestApp/Android.bp
  tests/Split/Android.bp
  tests/StagedInstallTest/Android.bp
  tests/StatusBar/Android.bp
  tests/SurfaceComposition/Android.bp
  tests/SurfaceControlViewHostTest/Android.bp
  tests/SystemMemoryTest/device/Android.bp
  tests/SystemMemoryTest/host/Android.bp
  tests/SystemUIDemoModeController/Android.bp
  tests/TaskOrganizerTest/Android.bp
  tests/TelephonyCommonTests/Android.bp
  tests/TouchLatency/Android.bp
  tests/TransformTest/Android.bp
  tests/TtsTests/Android.bp
  tests/UiBench/Android.bp
  tests/UsageReportingTest/Android.bp
  tests/UsageStatsPerfTests/Android.bp
  tests/UsageStatsTest/Android.bp
  tests/UsbHostExternalManagmentTest/AoapTestDevice/Android.bp
  tests/UsbHostExternalManagmentTest/AoapTestHost/Android.bp
  tests/UsbHostExternalManagmentTest/UsbHostExternalManagmentTestApp/Android.bp
  tests/UsbManagerTests/Android.bp
  tests/UsbManagerTests/lib/Android.bp
  tests/UsbTests/Android.bp
  tests/UsesFeature2Test/Android.bp
  tests/VectorDrawableTest/Android.bp
  tests/VoiceEnrollment/Android.bp
  tests/VoiceInteraction/Android.bp
  tests/WallpaperTest/Android.bp
  tests/WindowAnimationJank/Android.bp
  tests/WindowInsetsTests/Android.bp
  tests/appwidgets/AppWidgetHostTest/Android.bp
  tests/appwidgets/AppWidgetProviderTest/Android.bp
  tests/backup/Android.mk
  tests/benchmarks/Android.bp
  tests/libs-permissions/Android.bp
  tests/net/Android.bp
  tests/net/common/Android.bp
  tests/net/deflake/Android.bp
  tests/net/integration/Android.bp
  tests/net/jni/Android.bp
  tests/net/smoketest/Android.bp
  tests/notification/Android.bp
  tests/permission/Android.bp
  tests/privapp-permissions/Android.bp
  tests/testables/Android.bp
  tests/testables/tests/Android.bp
  tests/utils/StubIME/Android.bp
  tests/utils/hostutils/Android.bp
  tests/utils/testutils/Android.bp
  tests/vcn/Android.bp
  tools/aapt/Android.bp
  tools/aapt2/Android.bp
  tools/aapt2/integration-tests/AutoVersionTest/Android.bp
  tools/aapt2/integration-tests/BasicTest/Android.bp
  tools/aapt2/integration-tests/MergeOnlyTest/LeafLib/Android.mk
  tools/aapt2/integration-tests/MergeOnlyTest/LocalLib/Android.mk
  tools/aapt2/integration-tests/NamespaceTest/LibOne/Android.mk
  tools/aapt2/integration-tests/NamespaceTest/LibTwo/Android.mk
  tools/aapt2/integration-tests/StaticLibTest/App/Android.bp
  tools/aapt2/integration-tests/StaticLibTest/LibOne/Android.bp
  tools/aapt2/integration-tests/StaticLibTest/LibTwo/Android.bp
  tools/aapt2/integration-tests/SymlinkTest/Android.bp
  tools/bit/Android.bp
  tools/codegen/Android.bp
  tools/dump-coverage/Android.bp
  tools/incident_report/Android.bp
  tools/incident_section_gen/Android.bp
  tools/lock_agent/Android.bp
  tools/locked_region_code_injection/Android.bp
  tools/obbtool/Android.bp
  tools/powermodel/Android.bp
  tools/preload-check/Android.bp
  tools/preload-check/device/Android.bp
  tools/preload/loadclass/Android.bp
  tools/processors/staledataclass/Android.bp
  tools/processors/view_inspector/Android.bp
  tools/protologtool/Android.bp
  tools/sdkparcelables/Android.bp
  tools/split-select/Android.bp
  tools/streaming_proto/Android.bp
  tools/validatekeymaps/Android.bp
  wifi/java/Android.bp
  wifi/tests/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD to:
  libs/hwui/Android.bp
  native/webview/plat_support/Android.bp
  obex/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
    SPDX-license-identifier-CC-BY SPDX-license-identifier-CPL-1.0
    SPDX-license-identifier-GPL SPDX-license-identifier-GPL-2.0
    SPDX-license-identifier-MIT SPDX-license-identifier-Unicode-DFS
    SPDX-license-identifier-W3C legacy_unencumbered
to:
  Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD
    legacy_unencumbered
to:
  core/java/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-CPL-1.0
to:
  test-base/Android.bp
  test-runner/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-GPL
to:
  core/res/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-GPL-2.0
to:
  libs/usb/Android.bp
  libs/usb/tests/accessorytest/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT
to:
  tools/preload/Android.bp

Added SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT
    SPDX-license-identifier-Unicode-DFS
to:
  api/Android.bp
  boot/Android.bp
  cmds/device_config/Android.bp
  cmds/settings/Android.bp
  core/api/Android.bp
  core/tests/coretests/certs/Android.bp
  core/tests/overlaytests/remount/test-apps/certs/Android.bp
  core/tests/overlaytests/remount/test-apps/overlaid_apex/Android.bp
  core/tests/overlaytests/remount/test-apps/overlay_apex/Android.bp
  libs/tracingproxy/Android.bp
  services/startop/Android.bp
  test-legacy/Android.mk
  tests/ApkVerityTest/testdata/Android.bp
  tests/TransitionTests/Android.bp

Bug: 68860345
Bug: 151177513
Bug: 151953481

Test: m all

Exempt-From-Owner-Approval: janitorial work
Change-Id: Ib9737d8fb5ef5b90a2c14fe71f1a571079edcf02
Merged-In: Ib9737d8fb5ef5b90a2c14fe71f1a571079edcf02
2021-02-21 20:12:24 +00:00
Andrii Kulian
d1f0f42cba Remove hidden API usage in WM Extensions impl
Reference implementation of WM Extensions included a hidden API
call, which is prohibited when coming from non-system apps.

Bug: 179968070
Test: Build, test on YT and sample apps
Change-Id: Ic8b215b811a5e5d6abaacdb8ff0bf82fc3995d99
2021-02-12 15:08:12 -08:00
Andrii Kulian
336f9fdf86 Add sample WM Jetpack Extensions impl
Moving some of the common bits of Sidecar and Extensions
into helper classes and adding both to the reference repo.

Bug: 154172225
Test: m androidx.window.extensions
Test: Manual, by including extensions in the emulator image
Test: gradlew window:window:cAT
Change-Id: I44ff06b06b2202a5d687216e017528098dc14d1d
2021-02-03 22:18:11 -08:00
Alex Chau
5655d7b5d8 [Jetpack] Read display_featuers from core res
- Introduced config_display_feautres in core res

Bug: 168610278
Test: Manual
Change-Id: Iee8114bd79d947c2ca28d379587da6c184de686c
2020-09-15 16:53:52 +01:00
Andrii Kulian
4ebadc8056 Move reference WM Sidecar impl to system_ext
Placing the reference implementation in /vendor partition tirggers
UnofficialApisUsageTest failures due to hidden API use in the sample.
Moving it to system_ext should resolve this issue.

Bug: 167214265
Test: com.android.gts.api.UnofficialApisUsageTest#testNonApiReferences
Change-Id: I628fd0e00558208a3af26ecf02b82a3cedad8011
2020-09-08 21:33:26 -07:00
Diego Vela
7b2fdb4cea Fix mismatchecd use of isEmpty in Sidecar
Replace use of isEmpty with check for zero Rect.

Test: n/a
Bug: 160827187
Change-Id: I22c041e095fd9b28c3b526f78e2adecd2ea4b88e
2020-07-14 11:07:06 -07:00
Diego Vela
b9437ef4f1 Downgrade Window JetPack
Add window sidecar aar.
Add settings implementation of SidecarInterface.

Bug: 157477145
Test: use a device with sidecar and not window extensions.
    atest CtsWindowManagerJetpackTestCases:ExtensionTest
Change-Id: Iade7a4ba5a75ba7301cd151b54a95820a3d4bdde
2020-06-03 15:44:46 -07:00