diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2017-09-29 07:54:37 -0700 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2017-09-29 07:55:25 -0700 |
commit | 6b0aa870b821b5531f6eec782542a2b1e0f2c0ee (patch) | |
tree | 1d4d5bf59a4d6230436f2c7bd0b4c799635a9d6d /src/com/android/launcher3/AppInfo.java | |
parent | 510fdfbcea6bc6bf76e29a67fef106b78e8b0d89 (diff) | |
download | android_packages_apps_Trebuchet-6b0aa870b821b5531f6eec782542a2b1e0f2c0ee.tar.gz android_packages_apps_Trebuchet-6b0aa870b821b5531f6eec782542a2b1e0f2c0ee.tar.bz2 android_packages_apps_Trebuchet-6b0aa870b821b5531f6eec782542a2b1e0f2c0ee.zip |
Caching system app flag to avoid unnecessary system calls
when scrolling
Bug: 65493000
Change-Id: If60ec6dec23e7efa1031d72e76775fa2449bcd7b
Diffstat (limited to 'src/com/android/launcher3/AppInfo.java')
-rw-r--r-- | src/com/android/launcher3/AppInfo.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/com/android/launcher3/AppInfo.java b/src/com/android/launcher3/AppInfo.java index 3da199635..7d2f75385 100644 --- a/src/com/android/launcher3/AppInfo.java +++ b/src/com/android/launcher3/AppInfo.java @@ -19,6 +19,7 @@ package com.android.launcher3; import android.content.ComponentName; import android.content.Context; import android.content.Intent; +import android.content.pm.ApplicationInfo; import android.content.pm.LauncherActivityInfo; import android.os.UserHandle; @@ -31,6 +32,10 @@ import com.android.launcher3.util.PackageManagerHelper; */ public class AppInfo extends ItemInfoWithIcon { + public static final int FLAG_SYSTEM_UNKNOWN = 0; + public static final int FLAG_SYSTEM_YES = 1 << 0; + public static final int FLAG_SYSTEM_NO = 1 << 1; + /** * The intent used to start the application. */ @@ -43,6 +48,11 @@ public class AppInfo extends ItemInfoWithIcon { */ public int isDisabled = ShortcutInfo.DEFAULT; + /** + * Stores if the app is a system app or not. + */ + public int isSystemApp; + public AppInfo() { itemType = LauncherSettings.Favorites.ITEM_TYPE_APPLICATION; } @@ -71,6 +81,10 @@ public class AppInfo extends ItemInfoWithIcon { } intent = makeLaunchIntent(info); + + isSystemApp = (info.getApplicationInfo().flags & ApplicationInfo.FLAG_SYSTEM) == 0 + ? FLAG_SYSTEM_NO : FLAG_SYSTEM_YES; + } public AppInfo(AppInfo info) { @@ -79,6 +93,7 @@ public class AppInfo extends ItemInfoWithIcon { title = Utilities.trim(info.title); intent = new Intent(info.intent); isDisabled = info.isDisabled; + isSystemApp = info.isSystemApp; } @Override |