Merge "[CD Taskbar] Stop External Taskbar Destruction on Window Close" into main
This commit is contained in:
@@ -196,13 +196,12 @@ public class TaskbarManager {
|
||||
private class RecreationListener implements DisplayController.DisplayInfoChangeListener {
|
||||
@Override
|
||||
public void onDisplayInfoChanged(Context context, DisplayController.Info info, int flags) {
|
||||
int displayId = context.getDisplayId();
|
||||
if ((flags & CHANGE_DENSITY) != 0) {
|
||||
debugTaskbarManager("onDisplayInfoChanged: Display density changed",
|
||||
context.getDisplayId());
|
||||
debugTaskbarManager("onDisplayInfoChanged: Display density changed", displayId);
|
||||
}
|
||||
if ((flags & CHANGE_NAVIGATION_MODE) != 0) {
|
||||
debugTaskbarManager("onDisplayInfoChanged: Navigation mode changed",
|
||||
context.getDisplayId());
|
||||
debugTaskbarManager("onDisplayInfoChanged: Navigation mode changed", displayId);
|
||||
}
|
||||
if ((flags & CHANGE_DESKTOP_MODE) != 0) {
|
||||
debugTaskbarManager("onDisplayInfoChanged: Desktop mode changed",
|
||||
@@ -210,16 +209,16 @@ public class TaskbarManager {
|
||||
handleDisplayUpdatesForPerceptibleTasks();
|
||||
}
|
||||
if ((flags & CHANGE_TASKBAR_PINNING) != 0) {
|
||||
debugTaskbarManager("onDisplayInfoChanged: Taskbar pinning changed",
|
||||
context.getDisplayId());
|
||||
debugTaskbarManager("onDisplayInfoChanged: Taskbar pinning changed", displayId);
|
||||
}
|
||||
|
||||
if ((flags & (CHANGE_DENSITY | CHANGE_NAVIGATION_MODE | CHANGE_DESKTOP_MODE
|
||||
| CHANGE_TASKBAR_PINNING | CHANGE_SHOW_LOCKED_TASKBAR)) != 0) {
|
||||
debugTaskbarManager("onDisplayInfoChanged: Recreating Taskbar!",
|
||||
context.getDisplayId());
|
||||
|
||||
TaskbarActivityContext taskbarActivityContext = getCurrentActivityContext();
|
||||
if ((flags & CHANGE_SHOW_LOCKED_TASKBAR) != 0) {
|
||||
debugTaskbarManager("onDisplayInfoChanged: show locked taskbar changed!",
|
||||
displayId);
|
||||
recreateTaskbars();
|
||||
} else if ((flags & CHANGE_DESKTOP_MODE) != 0) {
|
||||
if (mShouldIgnoreNextDesktopModeChangeFromDisplayController) {
|
||||
@@ -314,6 +313,11 @@ public class TaskbarManager {
|
||||
public void onExitDesktopMode(int duration) {
|
||||
for (int taskbarIndex = 0; taskbarIndex < mTaskbars.size(); taskbarIndex++) {
|
||||
int displayId = mTaskbars.keyAt(taskbarIndex);
|
||||
if (DesktopExperienceFlags.ENABLE_TASKBAR_CONNECTED_DISPLAYS.isTrue()
|
||||
&& !isDefaultDisplay(displayId)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
TaskbarActivityContext taskbarActivityContext = getTaskbarForDisplay(
|
||||
displayId);
|
||||
if (taskbarActivityContext != null
|
||||
@@ -333,6 +337,11 @@ public class TaskbarManager {
|
||||
public void onEnterDesktopMode(int duration) {
|
||||
for (int taskbarIndex = 0; taskbarIndex < mTaskbars.size(); taskbarIndex++) {
|
||||
int displayId = mTaskbars.keyAt(taskbarIndex);
|
||||
if (DesktopExperienceFlags.ENABLE_TASKBAR_CONNECTED_DISPLAYS.isTrue()
|
||||
&& !isDefaultDisplay(displayId)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
TaskbarActivityContext taskbarActivityContext = getTaskbarForDisplay(
|
||||
displayId);
|
||||
if (taskbarActivityContext != null) {
|
||||
|
||||
Reference in New Issue
Block a user