mirror of
https://github.com/LawnchairLauncher/lawnchair.git
synced 2026-02-18 10:18:20 +00:00
Also reset mBadgeScale to 0 when recycling view.
When left as 1f, the drawBadgeIfNecessary thinks that there is still a badge -- which results in a NPE when trying to draw the badge. Bug: 68324671 Change-Id: I4eedb5825b3a6429c99de0466a77d368a39b1951
This commit is contained in:
@@ -183,6 +183,7 @@ public class BubbleTextView extends TextView implements ItemInfoUpdateReceiver {
|
||||
public void reset() {
|
||||
mBadgeInfo = null;
|
||||
mBadgePalette = null;
|
||||
mBadgeScale = 0f;
|
||||
mForceHideBadge = false;
|
||||
}
|
||||
|
||||
|
||||
@@ -26,6 +26,7 @@ import android.graphics.Point;
|
||||
import android.graphics.Rect;
|
||||
import android.graphics.Shader;
|
||||
import android.support.annotation.Nullable;
|
||||
import android.util.Log;
|
||||
import android.util.SparseArray;
|
||||
|
||||
import com.android.launcher3.R;
|
||||
@@ -38,6 +39,8 @@ import com.android.launcher3.graphics.ShadowGenerator;
|
||||
*/
|
||||
public class BadgeRenderer {
|
||||
|
||||
private static final String TAG = "BadgeRenderer";
|
||||
|
||||
private static final boolean DOTS_ONLY = true;
|
||||
|
||||
// The badge sizes are defined as percentages of the app icon size.
|
||||
@@ -95,6 +98,10 @@ public class BadgeRenderer {
|
||||
*/
|
||||
public void draw(Canvas canvas, IconPalette palette, @Nullable BadgeInfo badgeInfo,
|
||||
Rect iconBounds, float badgeScale, Point spaceForOffset) {
|
||||
if (palette == null || iconBounds == null || spaceForOffset == null) {
|
||||
Log.e(TAG, "Invalid null argument(s) passed in call to draw.");
|
||||
return;
|
||||
}
|
||||
mTextPaint.setColor(palette.textColor);
|
||||
IconDrawer iconDrawer = badgeInfo != null && badgeInfo.isIconLarge()
|
||||
? mLargeIconDrawer : mSmallIconDrawer;
|
||||
|
||||
Reference in New Issue
Block a user