mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-03-03 17:36:49 +00:00
Adds BubbleControllers to TaskbarControllers
* BubbleControllers is optionally available (gated behind a flag). * The bubble bar controllers follow init & onDestroy after the taskbar controllers. * Adds the relevant views used by the bubble controllers to the transient taskbar layout. Bug: 253318833 Test: manual, with other CLs, see go/bubble-bar-tests Flag: WM_BUBBLE_BAR Change-Id: I685163cdcc912768b1a720952762f4cbc602b14b
This commit is contained in:
@@ -23,12 +23,14 @@ import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.android.launcher3.anim.AnimatedFloat;
|
||||
import com.android.launcher3.taskbar.allapps.TaskbarAllAppsController;
|
||||
import com.android.launcher3.taskbar.bubbles.BubbleControllers;
|
||||
import com.android.launcher3.taskbar.overlay.TaskbarOverlayController;
|
||||
import com.android.systemui.shared.rotation.RotationButtonController;
|
||||
|
||||
import java.io.PrintWriter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
/**
|
||||
* Hosts various taskbar controllers to facilitate passing between one another.
|
||||
@@ -61,6 +63,7 @@ public class TaskbarControllers {
|
||||
public final TaskbarEduTooltipController taskbarEduTooltipController;
|
||||
public final KeyboardQuickSwitchController keyboardQuickSwitchController;
|
||||
public final TaskbarDividerPopupController taskbarPinningController;
|
||||
public final Optional<BubbleControllers> bubbleControllers;
|
||||
|
||||
@Nullable private LoggableTaskbarController[] mControllersToLog = null;
|
||||
@Nullable private BackgroundRendererController[] mBackgroundRendererControllers = null;
|
||||
@@ -107,7 +110,8 @@ public class TaskbarControllers {
|
||||
TaskbarRecentAppsController taskbarRecentAppsController,
|
||||
TaskbarEduTooltipController taskbarEduTooltipController,
|
||||
KeyboardQuickSwitchController keyboardQuickSwitchController,
|
||||
TaskbarDividerPopupController taskbarPinningController) {
|
||||
TaskbarDividerPopupController taskbarPinningController,
|
||||
Optional<BubbleControllers> bubbleControllers) {
|
||||
this.taskbarActivityContext = taskbarActivityContext;
|
||||
this.taskbarDragController = taskbarDragController;
|
||||
this.navButtonController = navButtonController;
|
||||
@@ -133,6 +137,7 @@ public class TaskbarControllers {
|
||||
this.taskbarEduTooltipController = taskbarEduTooltipController;
|
||||
this.keyboardQuickSwitchController = keyboardQuickSwitchController;
|
||||
this.taskbarPinningController = taskbarPinningController;
|
||||
this.bubbleControllers = bubbleControllers;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -167,6 +172,7 @@ public class TaskbarControllers {
|
||||
taskbarEduTooltipController.init(this);
|
||||
keyboardQuickSwitchController.init(this);
|
||||
taskbarPinningController.init(this);
|
||||
bubbleControllers.ifPresent(controllers -> controllers.init(this));
|
||||
|
||||
mControllersToLog = new LoggableTaskbarController[] {
|
||||
taskbarDragController, navButtonController, navbarButtonsViewController,
|
||||
@@ -226,6 +232,7 @@ public class TaskbarControllers {
|
||||
taskbarRecentAppsController.onDestroy();
|
||||
keyboardQuickSwitchController.onDestroy();
|
||||
taskbarStashController.onDestroy();
|
||||
bubbleControllers.ifPresent(controllers -> controllers.onDestroy());
|
||||
|
||||
mControllersToLog = null;
|
||||
mBackgroundRendererControllers = null;
|
||||
|
||||
Reference in New Issue
Block a user