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

Commit 0b257d3e authored by Jon Miranda's avatar Jon Miranda Committed by android-build-merger
Browse files

Merge "Bandage fix for bitmap fatal exception where width / height !> 0." into...

Merge "Bandage fix for bitmap fatal exception where width / height !> 0." into ub-launcher3-qt-r1-dev am: cf92f3ed
am: b1d8ad6b

Change-Id: Ifb3662ee293ff5eace912be50e622171a0bcaaa6
parents 29e8ef36 b1d8ad6b
Loading
Loading
Loading
Loading
+9 −3
Original line number Diff line number Diff line
@@ -28,6 +28,8 @@ import android.graphics.drawable.Drawable;
import android.os.Build;
import android.util.Log;

import androidx.annotation.Nullable;

import com.android.launcher3.Launcher;
import com.android.launcher3.MainThreadExecutor;
import com.android.launcher3.R;
@@ -66,15 +68,19 @@ public class FolderAdaptiveIcon extends AdaptiveIconDrawable {
        return mBadge;
    }

    public static FolderAdaptiveIcon createFolderAdaptiveIcon(
    public static @Nullable FolderAdaptiveIcon createFolderAdaptiveIcon(
            Launcher launcher, int folderId, Point dragViewSize) {
        Preconditions.assertNonUiThread();
        int margin = launcher.getResources()
                .getDimensionPixelSize(R.dimen.blur_size_medium_outline);

        // Allocate various bitmaps on the background thread, because why not!
        final Bitmap badge = Bitmap.createBitmap(
                dragViewSize.x - margin, dragViewSize.y - margin, Bitmap.Config.ARGB_8888);
        int width = dragViewSize.x - margin;
        int height = dragViewSize.y - margin;
        if (width <= 0 || height <= 0) {
            return null;
        }
        final Bitmap badge = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);

        // Create the actual drawable on the UI thread to avoid race conditions with
        // FolderIcon draw pass