Ensure that hotseat callout only occurs when appropriate

issue 13551957

Change-Id: I87bda7eef8047edbd41f066930ed156a17d042df
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index d1d4ee6..dc5674c 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -4434,6 +4434,9 @@
         }
     }
 
+    protected boolean shouldClingFocusHotseatApp() {
+        return false;
+    }
     protected String getFirstRunClingSearchBarHint() {
         return "";
     }
diff --git a/src/com/android/launcher3/LauncherClings.java b/src/com/android/launcher3/LauncherClings.java
index 6d84e2b..1176aa5 100644
--- a/src/com/android/launcher3/LauncherClings.java
+++ b/src/com/android/launcher3/LauncherClings.java
@@ -264,21 +264,13 @@
                 WORKSPACE_CLING_DISMISSED_KEY, false)) {
             Cling c = initCling(R.id.workspace_cling, 0, false, true);
             c.updateWorkspaceBubblePosition();
-
-            try {
-                // We only enable the focused hotseat app if we are preinstalled
-                PackageManager pm = mLauncher.getPackageManager();
-                ApplicationInfo ai = pm.getApplicationInfo(mLauncher.getPackageName(), 0);
-                if ((ai.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
-                    // Set the focused hotseat app
-                    c.setFocusedHotseatApp(mLauncher.getFirstRunFocusedHotseatAppDrawableId(),
-                        mLauncher.getFirstRunFocusedHotseatAppRank(),
-                        mLauncher.getFirstRunFocusedHotseatAppComponentName(),
-                        mLauncher.getFirstRunFocusedHotseatAppBubbleTitle(),
-                        mLauncher.getFirstRunFocusedHotseatAppBubbleDescription());
-                }
-            } catch (PackageManager.NameNotFoundException e) {
-                e.printStackTrace();
+            if (mLauncher.shouldClingFocusHotseatApp()) {
+                // Set the focused hotseat app
+                c.setFocusedHotseatApp(mLauncher.getFirstRunFocusedHotseatAppDrawableId(),
+                    mLauncher.getFirstRunFocusedHotseatAppRank(),
+                    mLauncher.getFirstRunFocusedHotseatAppComponentName(),
+                    mLauncher.getFirstRunFocusedHotseatAppBubbleTitle(),
+                    mLauncher.getFirstRunFocusedHotseatAppBubbleDescription());
             }
         } else {
             removeCling(R.id.workspace_cling);