Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b6578419 authored by Beverly Tai's avatar Beverly Tai Committed by Automerger Merge Worker
Browse files

Merge "Don't show an app icon for uninitalized user" into sc-dev am: dfa48a97

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/13902468

Change-Id: Ied0726d2e13c2573c280cbe994c22c7645f61bb8
parents da96e372 dfa48a97
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1496,6 +1496,13 @@ public class ApplicationsState {
        }
    }

    /**
     * Whether the packages for the  user have been initialized.
     */
    public boolean isUserAdded(int userId) {
        return mEntriesMap.contains(userId);
    }

    public interface Callbacks {
        void onRunningStateChanged(boolean running);

+7 −2
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.UserHandle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
@@ -43,6 +44,7 @@ import com.android.systemui.plugins.ToastPlugin;
 * directly. Instead, use {@link ToastFactory#createToast}.
 */
public class SystemUIToast implements ToastPlugin.Toast {
    static final String TAG = "SystemUIToast";
    final Context mContext;
    final CharSequence mText;
    final ToastPlugin.Toast mPluginToast;
@@ -225,8 +227,12 @@ public class SystemUIToast implements ToastPlugin.Toast {
            int userId) {
        final ApplicationsState appState =
                ApplicationsState.getInstance((Application) context.getApplicationContext());
        if (!appState.isUserAdded(userId)) {
            Log.d(TAG, "user hasn't been fully initialized, not showing an app icon for "
                    + "packageName=" + packageName);
            return null;
        }
        final AppEntry appEntry = appState.getEntry(packageName, userId);

        if (!ApplicationsState.FILTER_DOWNLOADED_AND_LAUNCHER.filterApp(appEntry)) {
            return null;
        }
@@ -237,6 +243,5 @@ public class SystemUIToast implements ToastPlugin.Toast {
        Bitmap iconBmp = iconFactory.createBadgedIconBitmap(
                appInfo.loadUnbadgedIcon(context.getPackageManager()), user, true).icon;
        return new BitmapDrawable(context.getResources(), iconBmp);

    }
}