summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWinson <winsonc@google.com>2015-11-04 14:24:43 -0800
committerThe Android Automerger <android-build@google.com>2015-12-10 16:11:53 -0800
commiteebb13b2fbe9ec34123b326d240970e5b5b9fb9f (patch)
treeaec5b37abe50908833dc5cc444381957b036491f
parent463c543b770e47fd46e08178322866a5580ec297 (diff)
downloadbase-eebb13b2fbe9ec34123b326d240970e5b5b9fb9f.tar.gz
DO NOT MERGE Ensure that the device is provisioned before showing Recents.
Bug: 25476219 Change-Id: Ibbe621748f7275f8c1ccded84612ca16292559eb
-rw-r--r--packages/SystemUI/src/com/android/systemui/recents/Recents.java45
1 files changed, 45 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/recents/Recents.java b/packages/SystemUI/src/com/android/systemui/recents/Recents.java
index f1550a09b2e2..3917babe26e3 100644
--- a/packages/SystemUI/src/com/android/systemui/recents/Recents.java
+++ b/packages/SystemUI/src/com/android/systemui/recents/Recents.java
@@ -34,6 +34,7 @@ import android.os.AsyncTask;
import android.os.Handler;
import android.os.SystemClock;
import android.os.UserHandle;
+import android.provider.Settings;
import android.util.MutableBoolean;
import android.view.Display;
import android.view.LayoutInflater;
@@ -280,6 +281,12 @@ public class Recents extends SystemUI
@ProxyFromPrimaryToCurrentUser
@Override
public void showRecents(boolean triggeredFromAltTab, View statusBarView) {
+ // Ensure the device has been provisioned before allowing the user to interact with
+ // recents
+ if (!isDeviceProvisioned()) {
+ return;
+ }
+
if (mSystemServicesProxy.isForegroundUserOwner()) {
showRecentsInternal(triggeredFromAltTab);
} else {
@@ -304,6 +311,12 @@ public class Recents extends SystemUI
@ProxyFromPrimaryToCurrentUser
@Override
public void hideRecents(boolean triggeredFromAltTab, boolean triggeredFromHomeKey) {
+ // Ensure the device has been provisioned before allowing the user to interact with
+ // recents
+ if (!isDeviceProvisioned()) {
+ return;
+ }
+
if (mSystemServicesProxy.isForegroundUserOwner()) {
hideRecentsInternal(triggeredFromAltTab, triggeredFromHomeKey);
} else {
@@ -330,6 +343,12 @@ public class Recents extends SystemUI
@ProxyFromPrimaryToCurrentUser
@Override
public void toggleRecents(Display display, int layoutDirection, View statusBarView) {
+ // Ensure the device has been provisioned before allowing the user to interact with
+ // recents
+ if (!isDeviceProvisioned()) {
+ return;
+ }
+
if (mSystemServicesProxy.isForegroundUserOwner()) {
toggleRecentsInternal();
} else {
@@ -353,6 +372,12 @@ public class Recents extends SystemUI
@ProxyFromPrimaryToCurrentUser
@Override
public void preloadRecents() {
+ // Ensure the device has been provisioned before allowing the user to interact with
+ // recents
+ if (!isDeviceProvisioned()) {
+ return;
+ }
+
if (mSystemServicesProxy.isForegroundUserOwner()) {
preloadRecentsInternal();
} else {
@@ -469,6 +494,12 @@ public class Recents extends SystemUI
@Override
public void showNextAffiliatedTask() {
+ // Ensure the device has been provisioned before allowing the user to interact with
+ // recents
+ if (!isDeviceProvisioned()) {
+ return;
+ }
+
// Keep track of when the affiliated task is triggered
MetricsLogger.count(mContext, "overview_affiliated_task_next", 1);
showRelativeAffiliatedTask(true);
@@ -476,6 +507,12 @@ public class Recents extends SystemUI
@Override
public void showPrevAffiliatedTask() {
+ // Ensure the device has been provisioned before allowing the user to interact with
+ // recents
+ if (!isDeviceProvisioned()) {
+ return;
+ }
+
// Keep track of when the affiliated task is triggered
MetricsLogger.count(mContext, "overview_affiliated_task_prev", 1);
showRelativeAffiliatedTask(false);
@@ -888,6 +925,14 @@ public class Recents extends SystemUI
}
/**
+ * @return whether this device is provisioned.
+ */
+ private boolean isDeviceProvisioned() {
+ return Settings.Global.getInt(mContext.getContentResolver(),
+ Settings.Global.DEVICE_PROVISIONED, 0) != 0;
+ }
+
+ /**
* Returns the preloaded load plan and invalidates it.
*/
public static RecentsTaskLoadPlan consumeInstanceLoadPlan() {