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 d8730352e7ac59dd6984746a1d1d1a499bd75349..2cf85389f1680c0578db446847b66f4f64471d8b 100644 |
--- a/chrome/browser/ui/app_list/arc/arc_app_utils.cc |
+++ b/chrome/browser/ui/app_list/arc/arc_app_utils.cc |
@@ -4,6 +4,7 @@ |
#include "chrome/browser/ui/app_list/arc/arc_app_utils.h" |
+#include <memory> |
#include <string> |
#include "ash/shell.h" |
@@ -12,6 +13,8 @@ |
#include "chrome/browser/ui/app_list/arc/arc_app_list_prefs.h" |
#include "chrome/browser/ui/ash/launcher/arc_app_deferred_launcher_controller.h" |
#include "chrome/browser/ui/ash/launcher/chrome_launcher_controller.h" |
+#include "chromeos/dbus/dbus_thread_manager.h" |
+#include "chromeos/dbus/session_manager_client.h" |
#include "components/arc/arc_bridge_service.h" |
#include "ui/aura/window.h" |
#include "ui/display/display.h" |
@@ -74,6 +77,12 @@ arc::mojom::AppInstance* GetAppInstance(int required_version, |
return app_instance; |
} |
+void PrioritizeArcInstanceCallback(bool success) { |
+ VLOG(2) << "Finished prioritizing the instance: result=" << success; |
+ if (!success) |
+ LOG(ERROR) << "Failed to prioritize ARC"; |
+} |
+ |
// Find a proper size and position for a given rectangle on the screen. |
// TODO(skuhne): This needs more consideration, but it is lacking |
// WindowPositioner functionality since we do not have an Aura::Window yet. |
@@ -377,4 +386,12 @@ bool ShowPackageInfoOnPage(const std::string& package_name, |
return true; |
} |
+void PrioritizeArcInstance() { |
+ VLOG(2) << "Prioritizing the instance"; |
+ chromeos::SessionManagerClient* session_manager_client = |
+ chromeos::DBusThreadManager::Get()->GetSessionManagerClient(); |
+ session_manager_client->PrioritizeArcInstance( |
+ base::Bind(PrioritizeArcInstanceCallback)); |
+} |
+ |
} // namespace arc |