Index: chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controller.cc |
diff --git a/chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controller.cc b/chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controller.cc |
index d35a1f80ef82229bde061b7759b98624c76c919b..b95da14d8f074ac5cd3485e2467ed9955956c58d 100644 |
--- a/chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controller.cc |
+++ b/chrome/browser/ui/ash/launcher/browser_shortcut_launcher_item_controller.cc |
@@ -103,8 +103,14 @@ void BrowserShortcutLauncherItemController::UpdateBrowserItemState() { |
void BrowserShortcutLauncherItemController::SetShelfIDForBrowserWindowContents( |
Browser* browser, |
content::WebContents* web_contents) { |
- if (!IsBrowserRepresentedInBrowserList(browser)) |
+ // We need to call SetShelfIDForWindow for V1 applications since they are |
+ // content which might change and as such change the application type. |
+ if (!browser || |
+ !launcher_controller()->IsBrowserFromActiveUser(browser) || |
+ browser->host_desktop_type() != chrome::HOST_DESKTOP_TYPE_ASH || |
+ chrome::IsTrustedPopupWindowWithScheme(browser, content::kChromeUIScheme)) |
return; |
+ |
ash::SetShelfIDForWindow( |
launcher_controller()->GetShelfIDForWebContents(web_contents), |
browser->window()->GetNativeWindow()); |