summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrmcilroy@chromium.org <rmcilroy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-10 09:57:08 +0000
committerrmcilroy@chromium.org <rmcilroy@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-10 09:57:08 +0000
commit4e5382ff61c5845890ae24ac639a3a15a4fb74ae (patch)
treeae2e091b49cd35aefa1a9cbd43f67cb034fae539
parent83c71abf099c84e69171feb6b72310acbbfa92f7 (diff)
downloadchromium_src-4e5382ff61c5845890ae24ac639a3a15a4fb74ae.zip
chromium_src-4e5382ff61c5845890ae24ac639a3a15a4fb74ae.tar.gz
chromium_src-4e5382ff61c5845890ae24ac639a3a15a4fb74ae.tar.bz2
[Android] Make MemoryPressureListener respond to only background or critical Trim Memory signals.
BUG= Review URL: https://chromiumcodereview.appspot.com/18908002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210807 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--base/android/java/src/org/chromium/base/MemoryPressureListener.java14
1 files changed, 7 insertions, 7 deletions
diff --git a/base/android/java/src/org/chromium/base/MemoryPressureListener.java b/base/android/java/src/org/chromium/base/MemoryPressureListener.java
index e6d2dfa..311b0f6 100644
--- a/base/android/java/src/org/chromium/base/MemoryPressureListener.java
+++ b/base/android/java/src/org/chromium/base/MemoryPressureListener.java
@@ -8,8 +8,6 @@ import android.content.ComponentCallbacks2;
import android.content.Context;
import android.content.res.Configuration;
-import org.chromium.base.MemoryPressureLevelList;
-
/**
* This is an internal implementation of the C++ counterpart.
@@ -23,7 +21,7 @@ public class MemoryPressureListener {
new ComponentCallbacks2() {
@Override
public void onTrimMemory(int level) {
- nativeOnMemoryPressure(translate(level));
+ maybeNotifyMemoryPresure(level);
}
@Override
@@ -41,14 +39,16 @@ public class MemoryPressureListener {
* Used by applications to simulate a memory pressure signal.
*/
public static void simulateMemoryPressureSignal(int level) {
- nativeOnMemoryPressure(translate(level));
+ maybeNotifyMemoryPresure(level);
}
- private static int translate(int level) {
+ private static void maybeNotifyMemoryPresure(int level) {
if (level == ComponentCallbacks2.TRIM_MEMORY_COMPLETE) {
- return MemoryPressureLevelList.MEMORY_PRESSURE_CRITICAL;
+ nativeOnMemoryPressure(MemoryPressureLevelList.MEMORY_PRESSURE_CRITICAL);
+ } else if (level >= ComponentCallbacks2.TRIM_MEMORY_BACKGROUND ||
+ level == ComponentCallbacks2.TRIM_MEMORY_RUNNING_CRITICAL) {
+ nativeOnMemoryPressure(MemoryPressureLevelList.MEMORY_PRESSURE_MODERATE);
}
- return MemoryPressureLevelList.MEMORY_PRESSURE_MODERATE;
}
private static native void nativeOnMemoryPressure(int memoryPressureType);