summaryrefslogtreecommitdiff
path: root/packages/SystemUI/src/com/android/systemui/wmshell/WMShell.java
Commit message (Collapse)AuthorAgeFilesLines
* [DO NOT MERGE] Add centralized DisplayTracker for SystemUIAlex Stetson2023-01-261-7/+10
| | | | | | | | | | | | In multi-user multi-display systems where there could be multiple SystemUI instances running, the concept of what displays are relevant for a particular SystemUI may change. By adding a DisplayTracker class to abstract away display retrieval and callbacks, these instances can return the information that is most accurate for them. Bug: 256236871 Test: atest SystemUITests Change-Id: I51c1a380a344fb45d5e0de2c5c6ba5610733a3a2
* Implement Split to fullscreen with META+CTRL+DPAD_UPTracy Zhou2022-12-051-0/+6
| | | | | | Bug: 246661489 Test: https://recall.googleplex.com/projects/f4cc906f-d337-414e-aea8-d5434a0c6e88/sessions/77b9b268-4abb-4703-af72-fc0412f7312e Change-Id: Ie68e2c8a83879d3a9e91baea0be68e14d5dd9604
* Open Notes from a KeyEvent dispatchMarcello Galhardo2022-10-251-4/+6
| | | | | | | | | | | | | | | | | | | | | | | Dispatches any system `KeyEvent` from `PhoneWindowManager` to SystemUI, allowing SystemUI to handle the KeyEvent with custom behaviour. How the `KeyEvent` is handled will depend on the context: - If user is in the lockscreen, it will launch a full screen experience. - Otherwise, it will launch a floating task. Once the context is decided, we will query for any Activity that can handle the new action `android.intent.action.NOTES` to execute the launch. If no `Activity` is available, nothing will happen. To enable the feature, one must run the following ADB commands: - adb shell setprop "persist.wm.debug.floating_tasks" 1 # enables floating windows - adb shell setprop "persist.wm.debug.floating_tasks_as_bubbles" 1 # optional: enables bubble windows - adb shell setprop ""persist.sysui.debug.note_tasks"" 1 # enables note tasking experience - adb reboot # restart to load the new configs Test: atest SystemUITests:WMShellTest Test: atest SystemUITests:NoteTaskControllerTest Test: atest SystemUITests:NoteTaskInitializerTest Test: atest SystemUITests:NoteTaskIntentResolverTest Fixes: 248274123 Change-Id: I36f30b3cbfe9e538729471d531b1b4b770738544
* Track visible tasks in DesktopModeController and add a listenerMady Mellor2022-10-201-0/+17
| | | | | | | | | | | | | | - Adds DesktopModeTaskRepository to FreeformTaskListener to track visible freeform tasks - Adds a listener on DesktopModeController to allow sysui to find out about freeform tasks becoming visible - Adds a sysui state flag for freeform tasks being visible Bug: 245569277 Test: manual - add freeform task => launcher contents are gone - remove freeform task => launcher contents are visible Test: WMShellTest DesktopModeTaskRepositoryTest Change-Id: I2d717052678bc35a4c59b0bc03e0c4d22e6b103d
* Make CoreStartable an Interface.Dave Mankoff2022-10-131-4/+8
| | | | | | | | | Context is no longer passed in as a constructor arg. Bug: 229228871 Test: manual Change-Id: I3dd5e593f209d120eb36faf33ba629a2066ad3f5 Merged-In: I3dd5e593f209d120eb36faf33ba629a2066ad3f5
* Support for a floating task window (behind a sysui flag)Mady Mellor2022-09-211-0/+4
| | | | | | | | | | | | | | | | | | | | | | Creates a new package within shell for floating tasks along with a basic controller and interfaces for sysui and launcher to use to manage floating tasks. A single floating task is allowed at a time and they can only be created if a sysui flag is turned on. The floating task is backed by a TaskView, floats above all other content, and can be moved via a handle at the top of the view. The view sticks along the left and right edges of the screen, can be stashed (similar to PIP), and can be removed by dragging to a dismiss target in the middle of the screen (similar to PIP & bubbles). The tests included trigger the sysui flag on and off to ensure the flag behavior (i.e. that you can't create one unless the flag is on). Test: atest FloatingTaskControllerTest Bug: 237678727 Change-Id: I490c44685825e14166869b2cf7c2994ee0e30ba7
* Handle ProtoLog logging command in WMShellHongwei Wang2022-08-311-40/+0
| | | | | | | | | | | | | Added a ProtoLogController class that hooks into ShellCommandHandler to handle the adb shell command for ProtoLog in WMShell. Removed the proxy in WM to pipe the adb shell command to WMShell via StatusBarManagerService. Bug: 243447162 Test: adb shell dumpsys activity service \ SystemUIService WMShell protolog help Change-Id: I9175ec88dcbae53508c97b4df1c2378b3eb9d648
* Pipe user changed events to the ShellWinson Chung2022-08-191-21/+23
| | | | | | | | | | | | - Move PipController and OneHandedController to use this call internally instead of exposing it to SysUI Bug: 238217847 Test: atest WMShellUnitTests Test: atest PinnedStackTests Test: Test switching users with PIP & One handed mode Test: enable WM_SHELL_SYSUI_EVENTS protologs and verify Change-Id: I0f016aabb945eb8ce80ee4d4203122659d668b8f
* Fix PiP disappearance after unlockHongwei Wang2022-08-041-20/+30
| | | | | | | | | | | | | KeyguardUpdateMonitor uses WeakReference internally for all the registered callbacks, therefore an anonymous class may be released and unable to receive any callback after registration. Changed also the ConfigurationListener and KeyguardStateController.Callback in WMShell. Bug: 241249835 Test: repeatedly lock and unlock device with PiP being present Change-Id: I1c3ea269ee9955847212bebbebdd0d7130dbdce5
* Remove ShellInit/ShellCommandHandler interfaces to SysUIWinson Chung2022-07-201-8/+2
| | | | | | | | | | | - SysUI now calls init/commands/dump via the ShellController interface - Move ShellInit/ShellCommandHandler into the sysui package since it's only called on sysui startup Test: atest WMShellUnitTests Test: atest SystemUITests Bug: 238217847 Change-Id: I7b05dbab7648cb8a8c6f9381b0b5f545ed3398f1
* Remove unused interfaces and controllersWinson Chung2022-07-201-12/+0
| | | | | | | | | | - Some interfaces only existed to propagate configuration or keyguard changes which now go through the ShellController. TaskSurfaceHelper is no longer used since game dashboard has moved to GMS. Bug: 238217847 Test: atest WMShellUnitTests Change-Id: Ie8c5a77bf7bd5b8cc5f4a1b2382013228b1e5e3d
* Add keyguard callbacks to ShellInterfaceWinson Chung2022-07-201-43/+17
| | | | | | | | | | | - Currently multiple shell feature interfaces expose the same keyguard visibility callback, instead we can pipe this signal to the shell for controllers to register for events. Bug: 238217847 Test: atest WMShellUnitTests Test: atest SystemUITests Change-Id: I96125e9f3796c8303683c9314f13884121ded39d
* Add single interface for SysUI to call into ShellWinson Chung2022-07-181-54/+13
| | | | | | | | | | | | - Currently update configuration callbacks to use this interface so that individual features don't need to expose their own config change callbacks. Will followup with moving keyguard/shell init /shell command handler. Bug: 238217847 Test: atest WMShellUnitTests Change-Id: Id526ed588de8cf962e821a3b9e1933a67f354d77
* Fix the blank PiP window when unlockHongwei Wang2022-05-091-3/+7
| | | | | | | | | | When the keyguard is showing or animating with the surfaces behind, there is no need for PiP to be shown or offset-by-shelf-height. Video: http://recall/-/aaaaaabFQoRHlzixHdtY/g6b3BQS2iH7TibwA9eqq1x Bug: 230638352 Test: follow the reproduce step, see video Change-Id: Ia4264a8cac2b34a2f7e9b85b35ebee7f74842aa8
* Remove FileDescriptor from systemui.Dumpable.Dave Mankoff2022-04-051-2/+1
| | | | | | | | | | This is the first step in moving over to the new public android.util.Dumpable api. Bug: 217567642 Test: m SystemUI Merged-In: Ibaebcfb2c6c5326d0c45b8c72d868c76655d89a0 Change-Id: Ibaebcfb2c6c5326d0c45b8c72d868c76655d89a0
* Merge "Check if keyguard is showing instead of occluded for compat UI." into ↵Tom Natan2022-03-071-5/+9
|\ | | | | | | tm-dev
| * Check if keyguard is showing instead of occluded for compat UI.tomnatan2022-03-041-5/+9
| | | | | | | | | | | | | | | | | | This fixes an issue where compat UI is hidden even when keyguard is dismissed (but still considered occluded because the activity could occlude the keyguard). Bug: 206627721 Test: atest SystemUITests:WMShellTest Test: atest WMShellUnitTests:CompatUIControllerTest Change-Id: I95f5b4d75d46a4958763c5ea3cdadb09b88f9836
* | Clean up the legacy split screen (7/n)Tony Huang2022-02-231-21/+0
|/ | | | | | | | Clean up using of legacy split on SysUi. Bug: 199236198 Test: pass existing tests. Change-Id: I199dafc836d3ba7bc5db1740658247397523c200
* Enable back gesture when a SysUI dialog is showing (1/2)Jordan Demeulenaere2022-02-221-2/+2
| | | | | | | | | This CL ensures that back gesture is not disabled when a SysUI dialog is shown, so that the dialog can be closed by swiping back or swiping home. Test: Manual Bug: 210270549 Change-Id: Id7d597105b3a44ca20c5aef42dd0a7318e5d91b7
* Rem Dependency#get from WMShell and GarbageMonitorDave Mankoff2022-01-251-3/+4
| | | | | | Bug: 138786270 Test: manual Change-Id: I6a24cc23c33722f0fbeb0e288ec718fa30a47706
* Integrate keyguard behavior in split screen with shell-transitionJerry Chang2021-12-201-10/+0
| | | | | | | | | | | | | | | | Support to hide the divider bar when keyguard showing and support to dismiss split after unlocked on folded device. Also unbind show-when-locked split dismissing flow with stage visibility changed callback to simplify the code. Bug: 206487881 Test: atest WMShellUnitTests Test: trigger split, won't see divider bar showing above keyguard. Test: trigger split, fold the device and unlock will dismiss split. And there's no such split pair in recents. Test: trigger split with show-when-locked activity, it'll dismiss split when it's occluding keyguard. Change-Id: If536121ef0cae4acda12268ffb32024a9736bacd
* Merge "[1/n] Camera Compat UI: Refactor size compat mode UI controller." ↵Mariia Sandrikova2021-12-121-9/+9
|\ | | | | | | | | | | | | | | into sc-v2-dev am: aa7a8cdda5 am: 6863643cda Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16420818 Change-Id: I63c10a663aea9471594af90d1c59c57f8bef1e1c
| * [1/n] Camera Compat UI: Refactor size compat mode UI controller.Mariia Sandrikova2021-12-111-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First CL in the chain that will add a camera compat UI control which will be used to correct stretched issues in TextureView and SurfaceView cause by apps not handling mismatch between camera buffers and view size correctly. This change is necessary because right now there are 2 instances of WindowlessWindowManager (SizeCompatUIWindowManager) in SizeCompatUILayout: for a hint and for a restart button. They are also positioned relatively by computing offsets in java code rather than by specifying layout with XML. This code structure will cause issues since with upcoming camera changes there will be a need to coordinate relative position of 4 UI elements (2 buttons and 2 hints). What is changing in this CL: - Majority of changes are simple renaming from "size compat UI" to "compat UI" since, starting from the next change, two different compat controls will be supported. - Merging 2 instances of SizeCompatUIWindowManager into one (CompatUIWindowManager) and for that create a joint layout in compat_ui_layout.xml - Merge SizeCompatLayout logic into CompatUIWindowManager since in absence of 2 instances of WindowlessWindowManager there is no good reason to keep them separate. - Merging and renaming tests to follow refactoring of the implementation. Test: atest WMShellUnitTests (the same set of tests should be sufficient since this refactoring just reorganized the structure of the implementation) Bug: 206602997 Change-Id: I7141c69b7ba4742c5b7b2018329b91a1b37b45bc
* | Merge "Drag and drop to split transition" into sc-v2-dev am: 8653f2eeb5 am: ↵Mady Mellor2021-11-301-0/+19
|\| | | | | | | | | | | | | | | f42d0346ff Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16224193 Change-Id: I239808b6ec35c45207dcf057bf5558412a3a7555
| * Drag and drop to split transitionMady Mellor2021-11-291-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * DropZoneView represents a drop zone and handles animating the margins around it along with the splashscreen or highlight when the user drags into or out of the zone. * DragLayout hosts two of these views and populates them with the relevant app info for the splashscreen * While dragging the status bar is hidden Test: manual/visual on large screen device: - have an app open and drag and drop an app to split - try this in portrait and landscape - try dragging between the two drop zones - try releasing not in a drop zone - have two apps already in split and try dragging a different app to split - have an app open and get a notif, drag it to split - verify that the status bar hides while dragging and shows again (and is interactable) after dragging is done - trigger the drag and drop UI, then switch theme and trigger again, it should match the new theme => verify that the animation looks correct / matches mocks Test: atest WMShellUnitTests Bug: 202017826 Change-Id: I806e8ff8ba30d01b9b47d12aa0987cec7aeb7d0c
* | Merge "Fix split dismissed after click pip to split button" into sc-v2-dev ↵Tony Huang2021-11-191-0/+12
|\| | | | | | | | | | | | | | | am: 6a2ce827e2 am: 5611fc6c93 Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16235342 Change-Id: I231cfa55010874edb1631bbed8dcb0519e8679a7
| * Fix split dismissed after click pip to split buttonTony Huang2021-11-191-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When pip app could show when locked(e.g. Maps) and user click expand to split button, the keyguard occluded callback usually come before onStageVisibilityChanged then cause split exit by keyguard occluded Fix it by add more condition check, we should do it only when device waking up, keyguard occluded and only the stage included show when locked app is visible then exit split to show that app full screen. Bug: 202740657 Fix: 204527184 Test: manual Test: pass existing tests Change-Id: Id63e8dee42337b5dd4f767a866a965cb97761cf0
* | Merge "Remove all size compat UIs when the keyguard becomes occluded" into ↵Tom Natan2021-11-181-0/+17
|\| | | | | | | | | | | | | | | sc-v2-dev am: 1bbc9f6355 am: dd18ce17c4 Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16212776 Change-Id: I036dbfebe07b06f620ce78dab2fbc69e1d1855c2
| * Remove all size compat UIs when the keyguard becomes occludedtomnatan2021-11-171-0/+17
| | | | | | | | | | | | | | | | | | This is needed because when a non resizable activity is launched over the lockscreen and a size compat restart button is displayed (after fold/unfold), clicking on it results in undefined behavior that seems broken. The solution to hide the restart button in such cases was a UX decision. Fix: 202712269 Test: atest WMShellUnitTests:SizeCompatUILayoutTest Test: atest SystemUITests:WMShellTest Change-Id: Iced3948e0d7a37feb2f3422a7f25a22aab20a888
* | Rename SystemUI class to CoreStartableDave Mankoff2021-11-091-2/+2
|/ | | | | | Bug: 205725937 Test: manual Change-Id: I045a8b4b21cae0f4a6e61502384e2b1a607bc1c6
* Merge "Add a sysui state for manage menu being expanded" into sc-v2-devMady Mellor2021-10-181-0/+2
|\
| * Add a sysui state for manage menu being expandedMady Mellor2021-10-081-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | This is needed to properly scrim taskbar when bubbles are expanded with the manage menu open. Added tests around hiding / showing the menu and verifying the state. Bug: 197139718 Test: BubblesTest NewNotifPipelineBubblesTest Change-Id: I52e41344f9273398cea606c227dfcf3b8cc6394d
* | Fix theme change notificationSergey Serokurov2021-10-071-1/+1
|/ | | | | | | Change-Id: Ia7caf5c5c21fcdf6b175ca5cde2f114fc8dd01f7 Bug: 199250382 Test: Manual, verifed that the bubble views colors are correctly updated after theme has been changed. Test: Screen recording: https://drive.google.com/file/d/1Cbd-EinvVPTnDUGYzrtGq1Ym5NqTKNzB/view?usp=sharing
* Dismiss stage split when unlock after foldedJerry Chang2021-07-271-0/+5
| | | | | | | | | | | | Dismiss stage split to the last focused stage when unlocking after folded. Bug: 184795546 Test: enter split and fold the device, observe it dismisses to the proper stage after unlocked the device. Test: enter split after folded, unlock whon't dismiss split. Change-Id: I6abbf63c1675d612811c47b1c42f337607fb65fd
* Merge "Hook WakefulnessLifecycle for best timing of LockedDisabled" into ↵TreeHugger Robot2021-06-211-14/+24
|\ | | | | | | | | | | | | | | sc-dev am: aadedc76b6 Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15002670 Change-Id: I9fbc141b015c34d026e7f17b7d11bece5628e6f8
| * Hook WakefulnessLifecycle for best timing of LockedDisabledBill Lin2021-06-181-14/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Sets LockedDisabled when onStartedGoingToSleep() 2. Reset LockedDisabled when onFinishedWakingUp() 3. Update keyguard showing state to controller through onKeyguardVisibilityChanged(showing) The flow changes: 1) POWER-KEY going to sleep(AOD) 2) onStartedGoingToSleep() <--New timing for LockedDisabled 3) onFinishedGoingToSleep() 4) onKeyguardVisibilityChanged(true) <--Legacy LockedDisabled --------------- 1) POWER-KEY waking up to HOME 2) onStartedWakingUp() 3) onFinishedWakingUp() 4) onKeyguardVisibilityChanged(false) <--Reset LockedDisabled Screen OFF to AOD flow takes about 1800ms: POWER_KEY---(400ms)---> onStartedGoingToSleep()---(100ms)---> onFinishedGoingToSleep()---(1300ms)--->onKeyguardVisibilityChanged() Screen ON to HOME flow takes about 700ms: POWER_KEY---(50ms)---> onStartedWakingUp()---(160ms)---> onFinishedWakingUp()---(500ms)---> onKeyguardVisibilityChanged() Test: Manual PowerKey going to sleep > Trigger One Handed mode Test: atest WMShellUnitTests Bug: 191149165 Change-Id: I557ab4736d0f77b38334fb95d89dcf0875fc5be2
* | Merge "Allow one-handed mode shortcut expand notification" into sc-dev am: ↵Bill Lin2021-06-171-0/+11
|\| | | | | | | | | | | | | | | 789f014c04 Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14957128 Change-Id: I24b1fb1055403dd684bc0b1f96739fcdd8d6e809
| * Allow one-handed mode shortcut expand notificationBill Lin2021-06-171-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1) Add OneHandedEventCallback for WMShell to register callback, and if one handed mode settings set show notifications, when user tap one handed mode shortcut notify WMShell send KEYCODE_SYSTEM_NAVIGATION_DOWN through OneHandedEventCallback with SysUIMainExecutor. 2) Add isReady() flag in OneHandedDisplayAreaOrganizer and Simplify the flow of onActivatedActionChanged() to prevent potential race problem while auto-enable One-handed and immeditately startOneHanded(), however, DisplayAreaOrganizer#onDisplayAreaAppeared() may not ready for transtion yet, and result mState keep in unfinsihed STATE_ENTERING. 3) Adjust the transiton duration from 800ms to 600ms 800ms is a little bit long to affect timing of apply runtime overlay package. 4) DelayExecute setEnabledGesturalOverlay() until transition finised and at most delay once. - onSwipeToNotificationEnabledChanged() : DelayExecute - onEnabledSettingChanged() : DelayExecute - Ctor setupGesturalOverlay() : No DelayExecute - mState.isTransitioning() : DelayExecute Test: WMShellUnitTests Bug: 182425480 Change-Id: I2615c3b30ad95a858510b4bcc73d8f343843fc96
* | Dismiss staged split when keyguard is occludedJerry Chang2021-05-241-4/+21
|/ | | | | | | | | | | | | | | Dismiss staged split if there's show-when-locked activity showing on top of keyguard. Add a callback to monitor keyguard occluded state and delegate it to StageController in WMShell, so that it could dismiss staged split properly when keyguard is occluded. Bug: 188010345 Fix: 187360909 Test: WMShellUnitTests Test: launch show-when-locked activity while keyguard showing and staged split activated, observed the staged split will be dismissed. Change-Id: If93b36f3fcef969d449c505086459997c27b8c75
* (1/n) Disabling OHM gesture in NavigationBar 3 Button modeJason Chang2021-05-131-33/+0
| | | | | | | | | | | | | | | | | | | | 1) UX mentioned the swipe gesture in 3-Button NavgationBar area may confuse user from taping NavBar buttons(Back, Home, Recents). They decide to disable the swipe gesture and allow user to trigger One Handed Mode(3 Button Mode) through A11y shortcut. However, user can still use OHM by enabled shortcut button on both Gesture Navigation & 3-Button mode. 2) OHM gestural handler consume the touch event while window Magnification overlap with NavigationBar area in 3-button mode, this result Magnification function can no long obtain the control. Bug: 184903678 Bug: 179648683 Test: manual Test: atest WMShellUnitTests Change-Id: Ib9a06e19d749707e6f5e08c3ef803c1681f86bbc
* Revert "Revert "1/ Add onStartTransition() callback for SYSUI_ST..."Bill Lin2021-04-271-0/+8
| | | | | | | | | | | | | Revert submission 14315426-revert_fix_ohm_exit_flicker Reason for revert: The root cause of b/186197537 is ag/14296935 I should safe to re-landing the 2 CLs Reverted Changes: Ifd17094f0:Revert "1/ Add onStartTransition() callback for SY... Ia921d073c:Revert "2/ Resolve gesture one handed conflicts sw... Change-Id: Ieccadf78ab873e00efa5102348c3787f00bd3275
* Revert "1/ Add onStartTransition() callback for SYSUI_STATE_ONE_HANDED_ACTIVE"Bill Lin2021-04-261-8/+0
| | | | | | | | This reverts commit 3e208562150aed2dfcacd3ebe9c50b5c04a67c0f. Reason for revert: test for b/186197537 Change-Id: Ifd17094f0231b0d6efcf1318cbc86560c5a8f6d1
* 1/ Add onStartTransition() callback for SYSUI_STATE_ONE_HANDED_ACTIVEBill Lin2021-04-211-0/+8
| | | | | | | | | | | | | | | | | | | | | | Previously in launcher quick steps, when one handed mode trigger the gesture is easy to conflict "swipe up Recents" and "swipe horizontal for quick switch", we only consume gesture when SYSUI_STATE_ONE_HANDED_ACTIVE=true, however, user have a bad experience when one handed transitioning conflict to "swipe up to launch recents". Legacy design : onStartFinished() : SYSUI_STATE_ONE_HANDED_ACTIVE -> true onStopFinished() : SYSUI_STATE_ONE_HANDED_ACTIVE -> false New design : onTransition() : SYSUI_STATE_ONE_HANDED_ACTIVE -> true onStartFinished() : SYSUI_STATE_ONE_HANDED_ACTIVE -> true onStopFinished() : SYSUI_STATE_ONE_HANDED_ACTIVE -> false Test: atest WMShellUnitTests Bug: 177978035 Change-Id: Iac9612b2eb07606712a4ab3eb036ac6fd3d12ae3
* Fix metrics didn't log ONE_HANDED_TRIGGER_GESTURE_OUT logs whenJason Chang2021-04-161-0/+1
| | | | | | | | | | | | | | NavigationBar type is Gesture Navi Write metrics gesture out event in stopOneHanded() callback. Bug: 178445384 Test: manual Test: Westworld metrics logger Change-Id: Ifd358d2aeda1a518f184216674a304511e251100 Merged-In: Ifd358d2aeda1a518f184216674a304511e251100 (cherry picked from commit 688e89c65dfb199f89ecda47d5376388dc934859)
* 1/ Make One handed mode support multiple user switchBill Lin2021-03-301-0/+5
| | | | | | | | | | | | | Previously OHM did not support for multile user switch Now we hook SysUI onUserSwitch callback to update latest one handed mode functionality by currentUserId Test: atest SystemUITests Test: atest WMShellUnitTests Test: manually switch user and observe verify different OHM config for different users Bug: 182278800 Change-Id: I8ae7d0aedcafc8f477f41d2703df2df53839a89f
* Allow temporary locked OHM function disabled when keyguard visibleBill Lin2021-02-211-0/+7
| | | | | | | | | | | | - User is easier to mis-trigger OHM when keyguard showing it's make sense to disabled OHM when keyguard showing - Resolve OneHandedControllerTest flaky Test: atest WMShellUnitTests Test: manual enable OHM, when keyguard showing OHM can not trigger Bug: 179044949 Bug: 180682204 Change-Id: I59399e35c7f7bc895df006f54b43e572a9463fd1
* Merge "Fix The education UI above one-handed mode isn't localized and ↵TreeHugger Robot2021-02-201-0/+7
|\ | | | | | | Display size changes" into sc-dev
| * Fix The education UI above one-handed mode isn't localizedJason Chang2021-02-181-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | and Display size changes Handling onConfigurationChanged() event to response system configuraiton changes. Bug: 177980234 Bug: 177222027 Bug: 177222126 Test: manual Change-Id: I93dec3e83ae287c5dabc494625929c43f44a7037
* | Add protolog config as java resourceWinson Chung2021-02-121-1/+1
|/ | | | | | | | | | - No longer need the checked in version, this just adds the generated viewer config as a java resource - Disabling logs by default Bug: 168497382 Test: adb shell wm logging enable-text WM_SHELL_TASK_ORG Change-Id: Idc5f423dfc24b455de833e7f3f76e9e6db9ceb47
* 11/ Clean up usage of exported interfaces from internal controllersWinson Chung2021-02-091-1/+17
| | | | | | | | | | | | | | | | | | | - Adding documentation for dagger setup for shell - We should only reference the controllers from shell code instead of through the external interfaces. This reduces the number of exposed methods, and is also more direct (it ends up in the controller anyways). This means that the base module will provide the controllers separately and we can remove some duplication in the create methods for the controllers (except in cases where it's doing other initialization) - Remove SizeCompatUi interface since it's not actually used in SysUI - Group related dependencies in the module to make it a little eaiser to parse Bug: 161979899 Test: atest WMShellUnitTests Test: atest SystemUITests Change-Id: I07c2c002b87ffd127ebfce67b5485ff47d127e1f