summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/folder/FolderIcon.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/launcher3/folder/FolderIcon.java')
-rw-r--r--src/com/android/launcher3/folder/FolderIcon.java17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/com/android/launcher3/folder/FolderIcon.java b/src/com/android/launcher3/folder/FolderIcon.java
index 84ec18410..6533b0463 100644
--- a/src/com/android/launcher3/folder/FolderIcon.java
+++ b/src/com/android/launcher3/folder/FolderIcon.java
@@ -440,6 +440,14 @@ public class FolderIcon extends FrameLayout implements FolderListener {
invalidate();
}
+ public PreviewBackground getFolderBackground() {
+ return mBackground;
+ }
+
+ public PreviewItemManager getPreviewItemManager() {
+ return mPreviewItemManager;
+ }
+
@Override
protected void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);
@@ -463,14 +471,11 @@ public class FolderIcon extends FrameLayout implements FolderListener {
} else {
saveCount = canvas.save(Canvas.CLIP_SAVE_FLAG);
if (mPreviewLayoutRule.clipToBackground()) {
- mBackground.clipCanvasSoftware(canvas, Region.Op.INTERSECT);
+ canvas.clipPath(mBackground.getClipPath(), Region.Op.INTERSECT);
}
}
- // The items are drawn in coordinates relative to the preview offset
- canvas.translate(mBackground.basePreviewOffsetX, mBackground.basePreviewOffsetY);
mPreviewItemManager.draw(canvas);
- canvas.translate(-mBackground.basePreviewOffsetX, -mBackground.basePreviewOffsetY);
if (mPreviewLayoutRule.clipToBackground() && canvas.isHardwareAccelerated()) {
mBackground.clipCanvasHardware(canvas);
@@ -481,6 +486,10 @@ public class FolderIcon extends FrameLayout implements FolderListener {
mBackground.drawBackgroundStroke(canvas);
}
+ drawBadge(canvas);
+ }
+
+ public void drawBadge(Canvas canvas) {
if ((mBadgeInfo != null && mBadgeInfo.hasBadge()) || mBadgeScale > 0) {
int offsetX = mBackground.getOffsetX();
int offsetY = mBackground.getOffsetY();