mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 927740 (part 2) - Make about:memory's "Minimize Memory Usage" button affect child processes, like the "GC" and "CC" buttons. r=khuey.
--HG-- extra : rebase_source : 555f0e6ca11caa73e33f48a941ee119181c28b74
This commit is contained in:
parent
3ebd61539b
commit
57ebad82f8
@ -627,6 +627,7 @@ ContentParent::Init()
|
||||
obs->AddObserver(this, "memory-pressure", false);
|
||||
obs->AddObserver(this, "child-gc-request", false);
|
||||
obs->AddObserver(this, "child-cc-request", false);
|
||||
obs->AddObserver(this, "child-mmu-request", false);
|
||||
obs->AddObserver(this, "last-pb-context-exited", false);
|
||||
obs->AddObserver(this, "file-watcher-update", false);
|
||||
#ifdef MOZ_WIDGET_GONK
|
||||
@ -1008,6 +1009,7 @@ ContentParent::ActorDestroy(ActorDestroyReason why)
|
||||
obs->RemoveObserver(static_cast<nsIObserver*>(this), NS_IPC_IOSERVICE_SET_OFFLINE_TOPIC);
|
||||
obs->RemoveObserver(static_cast<nsIObserver*>(this), "child-gc-request");
|
||||
obs->RemoveObserver(static_cast<nsIObserver*>(this), "child-cc-request");
|
||||
obs->RemoveObserver(static_cast<nsIObserver*>(this), "child-mmu-request");
|
||||
obs->RemoveObserver(static_cast<nsIObserver*>(this), "last-pb-context-exited");
|
||||
obs->RemoveObserver(static_cast<nsIObserver*>(this), "file-watcher-update");
|
||||
#ifdef MOZ_WIDGET_GONK
|
||||
@ -1837,6 +1839,9 @@ ContentParent::Observe(nsISupports* aSubject,
|
||||
else if (!strcmp(aTopic, "child-cc-request")){
|
||||
unused << SendCycleCollect();
|
||||
}
|
||||
else if (!strcmp(aTopic, "child-mmu-request")){
|
||||
unused << SendMinimizeMemoryUsage();
|
||||
}
|
||||
else if (!strcmp(aTopic, "last-pb-context-exited")) {
|
||||
unused << SendLastPrivateDocShellDestroyed();
|
||||
}
|
||||
|
@ -359,22 +359,23 @@ function onLoad()
|
||||
|
||||
function doGC()
|
||||
{
|
||||
Cu.forceGC();
|
||||
Services.obs.notifyObservers(null, "child-gc-request", null);
|
||||
Cu.forceGC();
|
||||
updateMainAndFooter("Garbage collection completed", HIDE_FOOTER);
|
||||
}
|
||||
|
||||
function doCC()
|
||||
{
|
||||
Services.obs.notifyObservers(null, "child-cc-request", null);
|
||||
window.QueryInterface(Ci.nsIInterfaceRequestor)
|
||||
.getInterface(Ci.nsIDOMWindowUtils)
|
||||
.cycleCollect();
|
||||
Services.obs.notifyObservers(null, "child-cc-request", null);
|
||||
updateMainAndFooter("Cycle collection completed", HIDE_FOOTER);
|
||||
}
|
||||
|
||||
function doMMU()
|
||||
{
|
||||
Services.obs.notifyObservers(null, "child-mmu-request", null);
|
||||
gMgr.minimizeMemoryUsage(
|
||||
() => updateMainAndFooter("Memory minimization completed", HIDE_FOOTER));
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user