Hide clings in child mode

Bug: 8349525

Change-Id: Ie92153e77f1714b88986813a689a4fa7e444d1dc
diff --git a/src/com/android/launcher2/Launcher.java b/src/com/android/launcher2/Launcher.java
index 545ee2e..9e651c6 100644
--- a/src/com/android/launcher2/Launcher.java
+++ b/src/com/android/launcher2/Launcher.java
@@ -63,6 +63,7 @@
 import android.os.Message;
 import android.os.StrictMode;
 import android.os.SystemClock;
+import android.os.UserManager;
 import android.provider.Settings;
 import android.speech.RecognizerIntent;
 import android.text.Selection;
@@ -3686,6 +3687,14 @@
         // disable clings when running in a test harness
         if(ActivityManager.isRunningInTestHarness()) return false;
 
+        // Restricted secondary users (child mode) will potentially have very few apps
+        // seeded when they start up for the first time. Clings won't work well with that
+        boolean supportsRestrictedUsers =
+                android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN_MR2;
+        if (supportsRestrictedUsers) {
+            final UserManager um = (UserManager) getSystemService(Context.USER_SERVICE);
+            if (um.isUserRestricted()) return false;
+        }
         return true;
     }