Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(543)

Unified Diff: chrome/browser/memory/tab_manager_delegate_chromeos.cc

Issue 2357053002: Always use arc::InstanceHolder<T>::GetInstanceForMethod (Closed)
Patch Set: rebase, no code change Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/memory/tab_manager_delegate_chromeos.h ('k') | chrome/browser/speech/tts_chromeos.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/memory/tab_manager_delegate_chromeos.cc
diff --git a/chrome/browser/memory/tab_manager_delegate_chromeos.cc b/chrome/browser/memory/tab_manager_delegate_chromeos.cc
index fb72ebc30880ce217a379b976974619668eadee7..502975615878e1f2284cd9695cbfc7830b535ae0 100644
--- a/chrome/browser/memory/tab_manager_delegate_chromeos.cc
+++ b/chrome/browser/memory/tab_manager_delegate_chromeos.cc
@@ -63,6 +63,8 @@ const char kArcProcessNamePrefix[] = "org.chromium.arc.";
// a little while before doing the adjustment.
const int kFocusedProcessScoreAdjustIntervalMs = 500;
+const uint32_t kMinVersionForKillProcess = 1;
+
aura::client::ActivationClient* GetActivationClient() {
if (!ash::Shell::HasInstance())
return nullptr;
@@ -312,8 +314,6 @@ TabManagerDelegate::TabManagerDelegate(
: tab_manager_(tab_manager),
focused_process_(new FocusedProcess()),
mem_stat_(mem_stat),
- arc_process_instance_(nullptr),
- arc_process_instance_version_(0),
uma_(new UmaReporter()),
weak_ptr_factory_(this) {
registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_CLOSED,
@@ -322,9 +322,6 @@ TabManagerDelegate::TabManagerDelegate(
content::NotificationService::AllBrowserContextsAndSources());
registrar_.Add(this, content::NOTIFICATION_RENDER_WIDGET_VISIBILITY_CHANGED,
content::NotificationService::AllBrowserContextsAndSources());
- auto* arc_bridge_service = arc::ArcBridgeService::Get();
- if (arc_bridge_service)
- arc_bridge_service->process()->AddObserver(this);
auto* activation_client = GetActivationClient();
if (activation_client)
activation_client->AddObserver(this);
@@ -336,9 +333,6 @@ TabManagerDelegate::~TabManagerDelegate() {
auto* activation_client = GetActivationClient();
if (activation_client)
activation_client->RemoveObserver(this);
- auto* arc_bridge_service = arc::ArcBridgeService::Get();
- if (arc_bridge_service)
- arc_bridge_service->process()->RemoveObserver(this);
}
void TabManagerDelegate::OnBrowserSetLastActive(Browser* browser) {
@@ -357,21 +351,6 @@ void TabManagerDelegate::OnBrowserSetLastActive(Browser* browser) {
AdjustFocusedTabScore(pid);
}
-void TabManagerDelegate::OnInstanceReady() {
- auto* arc_bridge_service = arc::ArcBridgeService::Get();
- DCHECK(arc_bridge_service);
-
- arc_process_instance_ = arc_bridge_service->process()->instance();
- arc_process_instance_version_ = arc_bridge_service->process()->version();
-
- DCHECK(arc_process_instance_);
-}
-
-void TabManagerDelegate::OnInstanceClosed() {
- arc_process_instance_ = nullptr;
- arc_process_instance_version_ = 0;
-}
-
// TODO(cylee): Remove this function if Android process OOM score settings
// is moved back to Android.
// For example, negotiate non-overlapping OOM score ranges so Chrome and Android
@@ -597,9 +576,17 @@ TabManagerDelegate::GetSortedCandidates(
}
bool TabManagerDelegate::KillArcProcess(const int nspid) {
- if (!arc_process_instance_)
+ auto* arc_bridge_service = arc::ArcBridgeService::Get();
+ if (!arc_bridge_service)
return false;
- arc_process_instance_->KillProcess(nspid, "LowMemoryKill");
+
+ auto* arc_process_instance =
+ arc_bridge_service->process()->GetInstanceForMethod(
+ "KillProcess", kMinVersionForKillProcess);
+ if (!arc_process_instance)
+ return false;
+
+ arc_process_instance->KillProcess(nspid, "LowMemoryKill");
return true;
}
« no previous file with comments | « chrome/browser/memory/tab_manager_delegate_chromeos.h ('k') | chrome/browser/speech/tts_chromeos.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698