Bug: 113043444
Test: builds and verified that the jar exposes all the necessary
hidden API to Launcher
Change-Id: I71e245211ca2a2295c7d0b4b0c53c9fc8bcfebed
- Move all legacy recents code out of the core sysui code
- Add separate target for products which still depend on it
- Move overview proxy implementation into another implementation of the
recents interface
Test: atest SystemUITests
Test: Push SystemUiWithLegacyRecents to the system image
adb shell pm disable com.google.android.apps.nexuslauncher/com.android.quickstep.TouchInteractionService
and ensure that the old recents implementation still works (and split
screen)
Change-Id: Iad67218ec37c13c79b6393d87f6bdc4f3996e2c6
Signed-off-by: Winson Chung <winsonc@google.com>
ContextImpl has an internal rule that when ContextImpl#mDisplay is
null the Context is associated with the default display. The problem
is that, as discussed in Bug 117709581, when ContextImpl#mDisplay is
null ContextImpl#getDisplay() tries to get some non-null Display
object by making an IPC to the system server, which is redundant when
the display ID is the only thing that the caller wants to know.
By having an @hide method Context.getDisplayId(), we can ensure that
display ID can be obtained without any IPC. This enables us to
re-submit my CL [1] that aimed to instantiate InputMethodManager (IMM)
for each display but then got reverted due to a performance regression
(Bug 117434607).
There should be no developer-observable behavior change.
[1]: I7242e765426353672823fcc8277f20ac361930d7
c53d78e992
Fix: 117712745
Test: atest FrameworksCoreTests:android.content.ContextTest
Test: prebuilts/checkstyle/checkstyle.py -f \
frameworks/base/core/tests/coretests/src/android/content/ContextTest.java
Change-Id: I2534530a5ce90e2620c5039d793a6454a0a1e154
TerribleFailureHandler is hidden API, so we abstract it out so only
sysui uses it.
Test: compiles
Bug: 115877296
Change-Id: Iec9ca5c22beffcd9a86edde8eb5bdba06ae6aea5
This contains the core interfaces for plugin support, e.g. Plugin.java
and the associated annotations. It is reused by the shared library and
plugin interfaces in both sysui and launcher are built off of it.
Test: atest com.android.systemui.shared.plugins
Test: cd $ANDROID_BUILD_TOP/frameworks/base/packages/SystemUI/plugin_core \
&& mma -j32 && cd -
out/target/product/$TARGET_PRODUCT/obj/JAVA_LIBRARIES/PluginCoreLib_intermediates/javalib.jar
contains the created jar and is useable in launcher
Bug: 115877296
Change-Id: I82ca7398e882d6432333238e2f77a12e776f1d76
SystemUI uses PackageManager to enable/disable plugin components.
Launcher cannot do this, so we abstract this logic into an interface;
Launcher will have a different implementation.
Test: "atest com.android.systemui.shared.plugins"
build succeeds and all tests pass
Bug: 115877296
Change-Id: Ie6f11572026dafa369c99722d63d4daa0ea44fb5
NavigationBarCompat imports sun.misc.Resource though
it doesn't need it.
Bug: 113148576
Test: build only
Change-Id: I26d6e0b3d9a8948333fdf9f3659b87b3b46a75d5
In addition to changing imports, this required some changes to use java
7, since that's what the shared lib needs to be for launcher.
See bug for more details on this project.
Test: "atest com.android.systemui.shared.plugins"
build succeeds and all tests pass
Bug: 115877296
Change-Id: Ib79ede0a61664df0ba1a194632a345d2229777fc
- Removing references to SystemServicesProxy (to be removed) for
AM/WMWrapper
- Removing unused code for old nav bar swiping logic, and also unused
and quickstep-incompatible code for dragging in recents
- Removing all event bus logic from outside recents subpackage
- Exposing PipUI component for bridge caller
Bug: 114137554
Test: Can still swipe up
Change-Id: Ibcfbe06acae06ea5950615cabd52243279fee16d
- If the activity options has a start callback, abort will prematurely
call the callback prior to the app actually being good to go (and starting
the app transition)
- Also exposing custom activity options call with callback to Launcher
Bug: 111896388
Test: Make change with launcher to defer hiding the task view until the
transition-start callback, check that swiping down does not flicker
Change-Id: Ie19a38ed81b62057957b3ebfc119d5348468818b
Test: it builds!
Bug: 113128349
For Launcher3 to build from the library directly, the build rule cannot
be an app. This is the very first CL out of 2~3 that will follow.
Change-Id: I7a1aa2d33e1ccf64d91a65db58e69446e77a4044
One DisplayContent contains one InputMonitor now.
- Change setInputWindow of InputManagerService updated by displayId,
so Window Handles in InputDispather can be updated by each DisplayContent.
- Only exist one focus in current state, reset it if in removed DisplayContent,
will be updated by default display or focused display.
- Add displayId parameter for createInputConsumer and destroyInputConsumer,
so InputConsumer from PIP, RecentApp and Wallpaper can be supported in multi-display.
Bug: 111363643
Test: atest WindowManagerSmokeTest ActivityManagerMultiDisplayTests
Test: atest com.android.server.wm.DisplayContentTests
Test: atest libinput_tests inputflinger_tests
Change-Id: I999c355be1789af5759f00206475d004e10116e3
setFinalCrop functionality is reimplemented by creating a new bounds layer
and applying a crop on this layer. see ag/4625718
Test: go/wm-smoke
Change-Id: I3ffb6dc2e2afd5170f6c6dee9e928ed0600656b1
Bug: 111839343
Test: make -j31 && vendor/google/tools/flashall
-Tested for single touch swipe
-Tested with heads up noti
-Tested for single touch T1, second touch T2
T1 DOWN, T2 DOWN, T2 UP, T1 UP
T1 DOWN, T2 DOWN, T1 UP, T2 UP
Change-Id: I4b392ced07f6a9bece4bfc0a8be46de9b5088f82
Bug: 111077107
Test: Implement listener in Launcher and verify the callbacks are made
Change-Id: I4017c8e139242c2b0875f8222c99396d55b1be04
Signed-off-by: Winson Chung <winsonc@google.com>
- Atomically remove all the visible tasks so that SysUI doesn't need to
remove each task individually.
Bug: 80471073
Test: atest FrameworksServicesTests:RecentTasksTest#testRemoveAllVisibleTasks
Change-Id: I23a6e152e94d5462948ab40adc9d7baf593847e1
- It's possible for a task key to be invalidated from a background loader
thread while onTrimMemory is called from the UI thread
Bug: 111097496
Test: This is a race condition and hard to reproduce
Change-Id: I43333778487cd35166d4a22ed5cf27c641ec80c7
Moved deadzone detection to QuickScrubController so that quick scrub can
still occur. If anything is consumed by deadzone, no other touches will
occur however quickscrub can be detected and function with launcher. No
other events except for touch down will be sent to launcher.
Test: scrub right above the home button
Change-Id: I4b4e7a8eacf8fe38d8644116a526c175adaba790
Fixes: 80536498
Second step in unifying the window hierarchy that is currently split
within AM and WM packages. We move some of the API implementation for
activities from ActivityManagerService.java to
ActivityTaskManagerService.java.
Test: Existing tests pass
Test: go/wm-smoke-auto
Bug: 80414790
Change-Id: I23dcd924493d8ad1e0b6e3a55386fd72b0146605
First step in unifying the window hierarchy that is currently split
within AM and WM packages. We separate the interfaces and service dealing
with activities and their containers (tasks, stack, display) from the
rest of AM interfaces and services. This will allow us to move the new
interfaces and services to WM when the internal states are cleaned-up.
Test: Existing tests pass
Test: go/wm-smoke-auto
Bug: 80414790
Change-Id: Ide9b3f89123b768cdbd3e3878113c7a8021187f3
Bug: 109698096
Test: Launch app in launcher, launch same task from overview, ensure we are
logging the same component
Change-Id: I1c34267e7d4ac6ec467fab9467001b6301ee785c