diff options
author | Winson <winsonc@google.com> | 2015-11-04 14:24:43 -0800 |
---|---|---|
committer | The Android Automerger <android-build@google.com> | 2015-12-10 16:11:53 -0800 |
commit | eebb13b2fbe9ec34123b326d240970e5b5b9fb9f (patch) | |
tree | aec5b37abe50908833dc5cc444381957b036491f | |
parent | 463c543b770e47fd46e08178322866a5580ec297 (diff) | |
download | base-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.java | 45 |
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() { |