Index: chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_tab.cc |
diff --git a/chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_tab.cc b/chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_tab.cc |
index b1ce6d6d3ca34b2ca2e68cbeb8a3693ee46ed11f..0c263b8f0e0c9a31321f1b853218bf5ac0bdd5ff 100644 |
--- a/chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_tab.cc |
+++ b/chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_tab.cc |
@@ -5,6 +5,7 @@ |
#include "chrome/browser/ui/ash/launcher/chrome_launcher_app_menu_item_tab.h" |
#include "ash/wm/window_util.h" |
+#include "chrome/browser/ui/ash/multi_user/multi_user_util.h" |
#include "chrome/browser/ui/browser.h" |
#include "chrome/browser/ui/browser_finder.h" |
#include "chrome/browser/ui/browser_window.h" |
@@ -43,6 +44,10 @@ void ChromeLauncherAppMenuItemTab::Execute(int event_flags) { |
if (event_flags & (ui::EF_SHIFT_DOWN | ui::EF_MIDDLE_MOUSE_BUTTON)) { |
tab_strip->CloseWebContentsAt(index, TabStripModel::CLOSE_USER_GESTURE); |
} else { |
+ // In ChromeOS multiprofile scenario we might need to teleport the window |
+ // back to the current user desktop. |
+ multi_user_util::MoveWindowToCurrentDesktop( |
+ browser->window()->GetNativeWindow()); |
tab_strip->ActivateTabAt(index, false); |
browser->window()->Show(); |
// Need this check to prevent unit tests from crashing. |