diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2018-03-06 10:28:34 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2018-03-06 15:16:21 -0800 |
commit | f3efc25862f45faf65f3651b6b45d36e87f6783f (patch) | |
tree | 237c428e46cde22716573c716569e63003bc114c /src/com/android/launcher3/graphics/DragPreviewProvider.java | |
parent | 46d259d9fb7b918ee5fee773ee615dd9111aa89f (diff) | |
download | android_packages_apps_Trebuchet-f3efc25862f45faf65f3651b6b45d36e87f6783f.tar.gz android_packages_apps_Trebuchet-f3efc25862f45faf65f3651b6b45d36e87f6783f.tar.bz2 android_packages_apps_Trebuchet-f3efc25862f45faf65f3651b6b45d36e87f6783f.zip |
Using public APIs for hardware bitmaps
Bug: 35428783
Change-Id: I4e7eeaa94e0cdfb1c76dce507a6f855e4eebbd6c
Diffstat (limited to 'src/com/android/launcher3/graphics/DragPreviewProvider.java')
-rw-r--r-- | src/com/android/launcher3/graphics/DragPreviewProvider.java | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/src/com/android/launcher3/graphics/DragPreviewProvider.java b/src/com/android/launcher3/graphics/DragPreviewProvider.java index b77078582..e60a2c70b 100644 --- a/src/com/android/launcher3/graphics/DragPreviewProvider.java +++ b/src/com/android/launcher3/graphics/DragPreviewProvider.java @@ -24,19 +24,17 @@ import android.graphics.Paint; import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; import android.graphics.Rect; -import android.graphics.Region.Op; import android.graphics.drawable.Drawable; import android.os.Handler; import android.view.View; import com.android.launcher3.BubbleTextView; import com.android.launcher3.Launcher; -import com.android.launcher3.widget.LauncherAppWidgetHostView; import com.android.launcher3.R; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.folder.FolderIcon; -import com.android.launcher3.uioverrides.UiFactory; import com.android.launcher3.util.UiThreadHelper; +import com.android.launcher3.widget.LauncherAppWidgetHostView; import java.nio.ByteBuffer; @@ -119,28 +117,26 @@ public class DragPreviewProvider { * Responsibility for the bitmap is transferred to the caller. */ public Bitmap createDragBitmap() { - float scale = 1f; int width = mView.getWidth(); int height = mView.getHeight(); - boolean forceSoftwareRenderer = false; if (mView instanceof BubbleTextView) { Drawable d = ((BubbleTextView) mView).getIcon(); Rect bounds = getDrawableBounds(d); width = bounds.width(); height = bounds.height(); } else if (mView instanceof LauncherAppWidgetHostView) { - scale = ((LauncherAppWidgetHostView) mView).getScaleToFit(); + float scale = ((LauncherAppWidgetHostView) mView).getScaleToFit(); width = (int) (mView.getWidth() * scale); height = (int) (mView.getHeight() * scale); // Use software renderer for widgets as we know that they already work - forceSoftwareRenderer = true; + return BitmapRenderer.createSoftwareBitmap(width + blurSizeOutline, + height + blurSizeOutline, (c) -> drawDragView(c, scale)); } - final float scaleFinal = scale; - return UiFactory.createFromRenderer(width + blurSizeOutline, height + blurSizeOutline, - forceSoftwareRenderer, (c) -> drawDragView(c, scaleFinal)); + return BitmapRenderer.createHardwareBitmap(width + blurSizeOutline, + height + blurSizeOutline, (c) -> drawDragView(c, 1)); } public final void generateDragOutline(Bitmap preview) { |