Index: chrome/browser/ui/app_list/arc/arc_app_utils.cc |
diff --git a/chrome/browser/ui/app_list/arc/arc_app_utils.cc b/chrome/browser/ui/app_list/arc/arc_app_utils.cc |
index 188178440bb0e7a94ab85d7a1372dab6a179beff..d55435df593e1bb9a7caca69c0738e50d0ab955c 100644 |
--- a/chrome/browser/ui/app_list/arc/arc_app_utils.cc |
+++ b/chrome/browser/ui/app_list/arc/arc_app_utils.cc |
@@ -21,6 +21,7 @@ |
#include "chromeos/dbus/session_manager_client.h" |
#include "components/arc/arc_bridge_service.h" |
#include "components/arc/arc_service_manager.h" |
+#include "components/arc/arc_util.h" |
#include "components/arc/common/intent_helper.mojom.h" |
#include "ui/aura/window.h" |
#include "ui/display/display.h" |
@@ -270,17 +271,21 @@ bool LaunchApp(content::BrowserContext* context, |
bool arc_activated = false; |
if (!arc_session_manager->IsArcPlayStoreEnabled()) { |
- if (!prefs->IsDefault(app_id)) { |
- NOTREACHED(); |
- return false; |
+ if (prefs->IsDefault(app_id)) { |
+ arc_session_manager->SetArcPlayStoreEnabled(true); |
+ if (!arc_session_manager->IsArcPlayStoreEnabled()) { |
+ NOTREACHED(); |
+ return false; |
+ } |
+ arc_activated = true; |
+ } else { |
+ if (arc::ShouldAlwaysStartArc()) { |
+ arc_activated = true; |
+ } else { |
+ NOTREACHED(); |
+ return false; |
+ } |
} |
- |
- arc_session_manager->SetArcPlayStoreEnabled(true); |
- if (!arc_session_manager->IsArcPlayStoreEnabled()) { |
- NOTREACHED(); |
- return false; |
- } |
- arc_activated = true; |
} |
// PlayStore item has special handling for shelf controllers. In order to |