summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/logging
diff options
context:
space:
mode:
authorSunny Goyal <sunnygoyal@google.com>2016-06-20 14:56:28 -0700
committerSunny Goyal <sunnygoyal@google.com>2016-06-20 14:57:54 -0700
commit64976d5a5667f52ed3fe4346ea5ab910dcc2dc2d (patch)
tree1c6d7b2a36934153000a043abd067158a133d714 /src/com/android/launcher3/logging
parent91f3b1c0b8dbe2bf3f50e6913eb870e40486cbe6 (diff)
downloadandroid_packages_apps_Trebuchet-64976d5a5667f52ed3fe4346ea5ab910dcc2dc2d.tar.gz
android_packages_apps_Trebuchet-64976d5a5667f52ed3fe4346ea5ab910dcc2dc2d.tar.bz2
android_packages_apps_Trebuchet-64976d5a5667f52ed3fe4346ea5ab910dcc2dc2d.zip
Fixing potantial context leak code path
The javadoc in createUserEventDispatcher suggested that it can be used as a singleton. But it was being constructed as an inner class which would cause context leak when used as singleton Change-Id: I706018d4ab26b506ac936fe1a7304d9b530b820c
Diffstat (limited to 'src/com/android/launcher3/logging')
-rw-r--r--src/com/android/launcher3/logging/UserEventDispatcher.java18
1 files changed, 16 insertions, 2 deletions
diff --git a/src/com/android/launcher3/logging/UserEventDispatcher.java b/src/com/android/launcher3/logging/UserEventDispatcher.java
index e9a897ef4..0deee57ca 100644
--- a/src/com/android/launcher3/logging/UserEventDispatcher.java
+++ b/src/com/android/launcher3/logging/UserEventDispatcher.java
@@ -18,6 +18,7 @@ package com.android.launcher3.logging;
import android.content.ComponentName;
import android.content.Intent;
+import android.util.Log;
import android.view.View;
import android.view.ViewParent;
@@ -28,11 +29,14 @@ import com.android.launcher3.userevent.nano.LauncherLogProto.Target;
import com.android.launcher3.util.ComponentKey;
import java.util.List;
+import java.util.Locale;
/**
* Manages the creation of {@link LauncherEvent}.
*/
-public abstract class UserEventDispatcher {
+public class UserEventDispatcher {
+
+ private static final boolean DEBUG_LOGGING = false;
private final static int MAXIMUM_VIEW_HIERARCHY_LEVEL = 5;
/**
@@ -155,7 +159,17 @@ public abstract class UserEventDispatcher {
mActionDurationMillis = System.currentTimeMillis();
}
- public abstract void dispatchUserEvent(LauncherEvent ev, Intent intent);
+ public void dispatchUserEvent(LauncherEvent ev, Intent intent) {
+ if (DEBUG_LOGGING) {
+ Log.d("UserEvent", String.format(Locale.US,
+ "action:%s\nchild:%s\nparent:%s\nelapsed container %d ms session %d ms",
+ LoggerUtils.getActionStr(ev.action),
+ LoggerUtils.getTargetStr(ev.srcTarget[0]),
+ LoggerUtils.getTargetStr(ev.srcTarget[1]),
+ ev.elapsedContainerMillis,
+ ev.elapsedSessionMillis));
+ }
+ }
public int getPredictedRank(ComponentKey key) {
if (mPredictedApps == null) return -1;