Merge "Expose the source component which launched this task." into pi-dev
This commit is contained in:
@@ -20,6 +20,7 @@ import static android.app.WindowConfiguration.WINDOWING_MODE_FREEFORM;
|
|||||||
|
|
||||||
import android.app.ActivityManager;
|
import android.app.ActivityManager;
|
||||||
import android.app.KeyguardManager;
|
import android.app.KeyguardManager;
|
||||||
|
import android.content.ComponentName;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.pm.ActivityInfo;
|
import android.content.pm.ActivityInfo;
|
||||||
import android.content.pm.ApplicationInfo;
|
import android.content.pm.ApplicationInfo;
|
||||||
@@ -102,9 +103,14 @@ public class RecentsTaskLoadPlan {
|
|||||||
ActivityManager.RecentTaskInfo t = mRawTasks.get(i);
|
ActivityManager.RecentTaskInfo t = mRawTasks.get(i);
|
||||||
|
|
||||||
// Compose the task key
|
// Compose the task key
|
||||||
|
final ComponentName sourceComponent = t.origActivity != null
|
||||||
|
// Activity alias if there is one
|
||||||
|
? t.origActivity
|
||||||
|
// The real activity if there is no alias (or the target if there is one)
|
||||||
|
: t.realActivity;
|
||||||
final int windowingMode = t.configuration.windowConfiguration.getWindowingMode();
|
final int windowingMode = t.configuration.windowConfiguration.getWindowingMode();
|
||||||
TaskKey taskKey = new TaskKey(t.persistentId, windowingMode, t.baseIntent,
|
TaskKey taskKey = new TaskKey(t.persistentId, windowingMode, t.baseIntent,
|
||||||
t.userId, t.lastActiveTime);
|
sourceComponent, t.userId, t.lastActiveTime);
|
||||||
|
|
||||||
boolean isFreeformTask = windowingMode == WINDOWING_MODE_FREEFORM;
|
boolean isFreeformTask = windowingMode == WINDOWING_MODE_FREEFORM;
|
||||||
boolean isStackTask = !isFreeformTask;
|
boolean isStackTask = !isFreeformTask;
|
||||||
|
|||||||
@@ -60,12 +60,17 @@ public class Task {
|
|||||||
@ViewDebug.ExportedProperty(category="recents")
|
@ViewDebug.ExportedProperty(category="recents")
|
||||||
public long lastActiveTime;
|
public long lastActiveTime;
|
||||||
|
|
||||||
|
// The source component name which started this task
|
||||||
|
public final ComponentName sourceComponent;
|
||||||
|
|
||||||
private int mHashCode;
|
private int mHashCode;
|
||||||
|
|
||||||
public TaskKey(int id, int windowingMode, Intent intent, int userId, long lastActiveTime) {
|
public TaskKey(int id, int windowingMode, Intent intent,
|
||||||
|
ComponentName sourceComponent, int userId, long lastActiveTime) {
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.windowingMode = windowingMode;
|
this.windowingMode = windowingMode;
|
||||||
this.baseIntent = intent;
|
this.baseIntent = intent;
|
||||||
|
this.sourceComponent = sourceComponent;
|
||||||
this.userId = userId;
|
this.userId = userId;
|
||||||
this.lastActiveTime = lastActiveTime;
|
this.lastActiveTime = lastActiveTime;
|
||||||
updateHashCode();
|
updateHashCode();
|
||||||
|
|||||||
@@ -26,6 +26,7 @@ import static org.mockito.Mockito.never;
|
|||||||
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.verify;
|
||||||
import static org.mockito.Mockito.when;
|
import static org.mockito.Mockito.when;
|
||||||
|
|
||||||
|
import android.content.ComponentName;
|
||||||
import android.os.Looper;
|
import android.os.Looper;
|
||||||
import android.support.test.filters.SmallTest;
|
import android.support.test.filters.SmallTest;
|
||||||
import android.support.test.runner.AndroidJUnit4;
|
import android.support.test.runner.AndroidJUnit4;
|
||||||
@@ -61,7 +62,7 @@ public class HighResThumbnailLoaderTest extends SysuiSharedLibTestCase {
|
|||||||
MockitoAnnotations.initMocks(this);
|
MockitoAnnotations.initMocks(this);
|
||||||
mLoader = new HighResThumbnailLoader(mMockActivityManagerWrapper, Looper.getMainLooper(),
|
mLoader = new HighResThumbnailLoader(mMockActivityManagerWrapper, Looper.getMainLooper(),
|
||||||
false /* reducedResolution */);
|
false /* reducedResolution */);
|
||||||
mTask.key = new TaskKey(0, WINDOWING_MODE_UNDEFINED, null, 0, 0);
|
mTask.key = new TaskKey(0, WINDOWING_MODE_UNDEFINED, null, null, 0, 0);
|
||||||
when(mMockActivityManagerWrapper.getTaskThumbnail(anyInt(), anyBoolean()))
|
when(mMockActivityManagerWrapper.getTaskThumbnail(anyInt(), anyBoolean()))
|
||||||
.thenReturn(mThumbnailData);
|
.thenReturn(mThumbnailData);
|
||||||
mLoader.setVisible(true);
|
mLoader.setVisible(true);
|
||||||
|
|||||||
Reference in New Issue
Block a user