| Index: chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.cc
|
| diff --git a/chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.cc b/chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.cc
|
| index a382c49b7b5d0d76e96ae9c8d63d8bfb64a808b8..126a4694084f49a0af933602049840c23d9f429c 100644
|
| --- a/chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.cc
|
| +++ b/chrome/browser/ui/ash/multi_user/multi_user_window_manager_chromeos.cc
|
| @@ -15,6 +15,7 @@
|
| #include "ash/shell_delegate.h"
|
| #include "ash/shell_window_ids.h"
|
| #include "ash/system/tray/system_tray_notifier.h"
|
| +#include "ash/wm/maximize_mode/maximize_mode_controller.h"
|
| #include "ash/wm/window_state.h"
|
| #include "base/auto_reset.h"
|
| #include "base/message_loop/message_loop.h"
|
| @@ -692,6 +693,13 @@ void MultiUserWindowManagerChromeOS::SetWindowVisible(
|
| aura::Window* window,
|
| bool visible,
|
| int animation_time_in_ms) {
|
| + // The MaximizeModeWindowManager will not handle invisible windows since they
|
| + // are not user activatable. Since invisible windows are not being tracked,
|
| + // we tell it to maximize / track this window now before it gets shown, to
|
| + // reduce animation jank from multiple resizes.
|
| + if (visible)
|
| + ash::Shell::GetInstance()->maximize_mode_controller()->AddWindow(window);
|
| +
|
| AnimationSetter animation_setter(
|
| window,
|
| GetAdjustedAnimationTimeInMS(animation_time_in_ms));
|
|
|