Integrated new BubbleStashControllers into the existing code.
Integrated the PersistentTaskbarStashController and the TransientTaskbarStashController into the launcher code. Made changes to the TaskbarInsetsController to set appropriate touchable zones. Updated the TaskbarUIController to not start the overview transition on clicks for the collapsed bubble bar. Bug: 346391377 Fixes: 350065038 Fixes: 355664783 Flag: com.android.wm.shell.enable_bubble_bar_in_persistent_task_bar Test: com.android.launcher3.taskbar package tests persistent taskbar and transient taskbar manual testing: - on launcher home screen expand bubble bar, switch between bubbles, remove bubble via bubble menu, add bubble, remove bubble with the drug gesture, add bubble, collapse bubble bar - repeat previous test on launcher overview screen and inside any application - after last test drag expanded bubble view to the opposite side of the screen Change-Id: I50f2c510854c4895fdfc9bd453a261c2103286fd
This commit is contained in:
@@ -16,19 +16,19 @@
|
||||
package com.android.launcher3.taskbar.bubbles;
|
||||
|
||||
import com.android.launcher3.taskbar.TaskbarControllers;
|
||||
import com.android.launcher3.taskbar.bubbles.stashing.BubbleStashController;
|
||||
import com.android.launcher3.util.RunnableList;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* Hosts various bubble controllers to facilitate passing between one another.
|
||||
*/
|
||||
/** Hosts various bubble controllers to facilitate passing between one another. */
|
||||
public class BubbleControllers {
|
||||
|
||||
public final BubbleBarController bubbleBarController;
|
||||
public final BubbleBarViewController bubbleBarViewController;
|
||||
public final BubbleStashController bubbleStashController;
|
||||
public final BubbleStashedHandleViewController bubbleStashedHandleViewController;
|
||||
public final Optional<BubbleStashedHandleViewController> bubbleStashedHandleViewController;
|
||||
public final BubbleDragController bubbleDragController;
|
||||
public final BubbleDismissController bubbleDismissController;
|
||||
public final BubbleBarPinController bubbleBarPinController;
|
||||
@@ -45,7 +45,7 @@ public class BubbleControllers {
|
||||
BubbleBarController bubbleBarController,
|
||||
BubbleBarViewController bubbleBarViewController,
|
||||
BubbleStashController bubbleStashController,
|
||||
BubbleStashedHandleViewController bubbleStashedHandleViewController,
|
||||
Optional<BubbleStashedHandleViewController> bubbleStashedHandleViewController,
|
||||
BubbleDragController bubbleDragController,
|
||||
BubbleDismissController bubbleDismissController,
|
||||
BubbleBarPinController bubbleBarPinController,
|
||||
@@ -68,9 +68,15 @@ public class BubbleControllers {
|
||||
public void init(TaskbarControllers taskbarControllers) {
|
||||
bubbleBarController.init(this,
|
||||
taskbarControllers.navbarButtonsViewController::isImeVisible);
|
||||
bubbleBarViewController.init(taskbarControllers, this);
|
||||
bubbleStashedHandleViewController.init(taskbarControllers, this);
|
||||
bubbleStashController.init(taskbarControllers, this);
|
||||
bubbleStashedHandleViewController.ifPresent(
|
||||
controller -> controller.init(/* bubbleControllers = */ this));
|
||||
bubbleStashController.init(
|
||||
taskbarControllers.taskbarInsetsController,
|
||||
bubbleBarViewController,
|
||||
bubbleStashedHandleViewController.orElse(null),
|
||||
taskbarControllers::runAfterInit
|
||||
);
|
||||
bubbleBarViewController.init(taskbarControllers, /* bubbleControllers = */ this);
|
||||
bubbleDragController.init(/* bubbleControllers = */ this);
|
||||
bubbleDismissController.init(/* bubbleControllers = */ this);
|
||||
bubbleBarPinController.init(this);
|
||||
@@ -93,7 +99,7 @@ public class BubbleControllers {
|
||||
* Cleans up all controllers.
|
||||
*/
|
||||
public void onDestroy() {
|
||||
bubbleStashedHandleViewController.onDestroy();
|
||||
bubbleStashedHandleViewController.ifPresent(BubbleStashedHandleViewController::onDestroy);
|
||||
bubbleBarController.onDestroy();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user