summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Steve McKay <smckay@google.com> 2015-10-05 22:07:28 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2015-10-05 22:07:28 +0000
commit0651688a33358a332d4fcf86fd36fc9b6c898b6f (patch)
tree1de2feb909ce310aa7047f0b51265a260ccbf5a9
parent44c44f7b377f500e7e7dd9807f027c614d336ea9 (diff)
parentc2dbc749428992dd416e9cf3664564b086b899f0 (diff)
Merge "Don't explicitly foreground tasks."
-rw-r--r--packages/DocumentsUI/AndroidManifest.xml1
-rw-r--r--packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java2
-rw-r--r--packages/DocumentsUI/src/com/android/documentsui/FilesActivity.java2
-rw-r--r--packages/DocumentsUI/src/com/android/documentsui/FilteringCursorWrapper.java5
-rw-r--r--packages/DocumentsUI/src/com/android/documentsui/LauncherActivity.java47
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;
}
}