diff options
| author | 2015-10-05 22:07:28 +0000 | |
|---|---|---|
| committer | 2015-10-05 22:07:28 +0000 | |
| commit | 0651688a33358a332d4fcf86fd36fc9b6c898b6f (patch) | |
| tree | 1de2feb909ce310aa7047f0b51265a260ccbf5a9 | |
| parent | 44c44f7b377f500e7e7dd9807f027c614d336ea9 (diff) | |
| parent | c2dbc749428992dd416e9cf3664564b086b899f0 (diff) | |
Merge "Don't explicitly foreground tasks."
5 files changed, 36 insertions, 21 deletions
diff --git a/packages/DocumentsUI/AndroidManifest.xml b/packages/DocumentsUI/AndroidManifest.xml index 295cb80ade52..737444585296 100644 --- a/packages/DocumentsUI/AndroidManifest.xml +++ b/packages/DocumentsUI/AndroidManifest.xml @@ -3,7 +3,6 @@ <uses-permission android:name="android.permission.MANAGE_DOCUMENTS" /> <uses-permission android:name="android.permission.REMOVE_TASKS" /> - <uses-permission android:name="android.permission.REORDER_TASKS" /> <application android:name=".DocumentsApplication" diff --git a/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java b/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java index 008c03b75221..a24c936e2a37 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java +++ b/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java @@ -1757,7 +1757,7 @@ public class DirectoryFragment extends Fragment { } } - if (DEBUG) { + if (DEBUG && position != originalPos) { Log.d(TAG, "Item position adjusted for deletion. Original: " + originalPos + " Adjusted: " + position); } diff --git a/packages/DocumentsUI/src/com/android/documentsui/FilesActivity.java b/packages/DocumentsUI/src/com/android/documentsui/FilesActivity.java index 70ddf5916f2c..1330b3cbc7cd 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/FilesActivity.java +++ b/packages/DocumentsUI/src/com/android/documentsui/FilesActivity.java @@ -89,11 +89,13 @@ public class FilesActivity extends BaseActivity { RootsFragment.show(getFragmentManager(), null); if (mState.restored) { + if (DEBUG) Log.d(TAG, "Restored instance for uri: " + getIntent().getData()); onCurrentDirectoryChanged(ANIM_NONE); } else { Intent intent = getIntent(); Uri uri = intent.getData(); + if (DEBUG) Log.d(TAG, "Creating new instance for uri: " + uri); // If a non-empty stack is present in our state it was read (presumably) // from EXTRA_STACK intent extra. In this case, we'll skip other means of // loading or restoring the stack. diff --git a/packages/DocumentsUI/src/com/android/documentsui/FilteringCursorWrapper.java b/packages/DocumentsUI/src/com/android/documentsui/FilteringCursorWrapper.java index 17a1161f7c25..7426af56ecb1 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/FilteringCursorWrapper.java +++ b/packages/DocumentsUI/src/com/android/documentsui/FilteringCursorWrapper.java @@ -16,6 +16,7 @@ package com.android.documentsui; +import static com.android.documentsui.Shared.DEBUG; import static com.android.documentsui.Shared.TAG; import static com.android.documentsui.model.DocumentInfo.getCursorLong; import static com.android.documentsui.model.DocumentInfo.getCursorString; @@ -65,7 +66,9 @@ public class FilteringCursorWrapper extends AbstractCursor { } } - Log.d(TAG, "Before filtering " + cursor.getCount() + ", after " + mCount); + if (DEBUG && mCount != cursor.getCount()) { + Log.d(TAG, "Before filtering " + cursor.getCount() + ", after " + mCount); + } } @Override diff --git a/packages/DocumentsUI/src/com/android/documentsui/LauncherActivity.java b/packages/DocumentsUI/src/com/android/documentsui/LauncherActivity.java index c29937d68cdf..b3d0cf37bbd5 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/LauncherActivity.java +++ b/packages/DocumentsUI/src/com/android/documentsui/LauncherActivity.java @@ -16,15 +16,17 @@ package com.android.documentsui; +import static com.android.documentsui.Shared.DEBUG; + import android.app.Activity; import android.app.ActivityManager; import android.app.ActivityManager.AppTask; -import android.app.ActivityManager.RecentTaskInfo; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.support.annotation.Nullable; +import android.util.Log; import java.util.List; @@ -39,39 +41,47 @@ import java.util.List; */ public class LauncherActivity extends Activity { - public static final String LAUNCH_CONTROL_AUTHORITY = "com.android.documentsui.launchControl"; + private static final String LAUNCH_CONTROL_AUTHORITY = "com.android.documentsui.launchControl"; + private static final String TAG = "LauncherActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); ActivityManager activities = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); - List<AppTask> tasks = activities.getAppTasks(); - AppTask raiseTask = null; - for (AppTask task : tasks) { - Uri taskUri = task.getTaskInfo().baseIntent.getData(); - if (taskUri != null && isLaunchUri(taskUri)) { - raiseTask = task; - } - } - - if (raiseTask == null) { - launchFilesTask(); + Intent intent = findTask(activities); + if (intent != null) { + restoreTask(intent); } else { - raiseFilesTask(activities, raiseTask.getTaskInfo()); + startTask(); } finish(); } - private void launchFilesTask() { + private @Nullable Intent findTask(ActivityManager activities) { + List<AppTask> tasks = activities.getAppTasks(); + for (AppTask task : tasks) { + Intent intent = task.getTaskInfo().baseIntent; + Uri uri = intent.getData(); + if (isLaunchUri(uri)) { + return intent; + } + } + return null; + } + + private void startTask() { Intent intent = createLaunchIntent(this); + if (DEBUG) Log.d(TAG, "Starting new task > " + intent.getData()); startActivity(intent); } - private void raiseFilesTask(ActivityManager activities, RecentTaskInfo task) { - activities.moveTaskToFront(task.id, 0); + private void restoreTask(Intent intent) { + if (DEBUG) Log.d(TAG, "Restoring existing task > " + intent.getData()); + // TODO: This doesn't appear to restore a task once it has stopped running. + startActivity(intent); } static Intent createLaunchIntent(Context context) { @@ -88,6 +98,7 @@ public class LauncherActivity extends Activity { } static boolean isLaunchUri(@Nullable Uri uri) { - return uri != null && LAUNCH_CONTROL_AUTHORITY.equals(uri.getAuthority()); + boolean result = uri != null && LAUNCH_CONTROL_AUTHORITY.equals(uri.getAuthority()); + return result; } } |