diff options
author | Sunny Goyal <sunnygoyal@google.com> | 2017-11-08 16:52:34 -0800 |
---|---|---|
committer | Sunny Goyal <sunnygoyal@google.com> | 2017-12-13 13:36:36 -0800 |
commit | 9d32323cac8df6152db22d119a61fe2ddc5ada80 (patch) | |
tree | 5d4d251527f28c1daf39f0d39f6eb3e24376bc70 /quickstep | |
parent | 30d276cb92f507170311ff11463d8b0bdf949bae (diff) | |
download | android_packages_apps_Trebuchet-9d32323cac8df6152db22d119a61fe2ddc5ada80.tar.gz android_packages_apps_Trebuchet-9d32323cac8df6152db22d119a61fe2ddc5ada80.tar.bz2 android_packages_apps_Trebuchet-9d32323cac8df6152db22d119a61fe2ddc5ada80.zip |
First pass at using hardware bitmaps
Bug: 35428783
Change-Id: Ife67b85f6e7e268826597ed9bccd9659841f67de
Diffstat (limited to 'quickstep')
-rw-r--r-- | quickstep/src/com/android/launcher3/uioverrides/UiFactory.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java b/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java index 9178d8ad4..9be0d32e5 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java +++ b/quickstep/src/com/android/launcher3/uioverrides/UiFactory.java @@ -17,6 +17,8 @@ package com.android.launcher3.uioverrides; import android.content.Intent; +import android.graphics.Bitmap; +import android.graphics.Canvas; import android.view.View.AccessibilityDelegate; import android.widget.PopupMenu; import android.widget.Toast; @@ -24,11 +26,16 @@ import android.widget.Toast; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherStateManager.StateHandler; import com.android.launcher3.R; +import com.android.launcher3.config.FeatureFlags; +import com.android.launcher3.graphics.BitmapRenderer; import com.android.launcher3.util.TouchController; import com.android.launcher3.widget.WidgetsFullSheet; +import com.android.systemui.shared.recents.view.RecentsTransition; public class UiFactory { + public static final boolean USE_HARDWARE_BITMAP = FeatureFlags.IS_DOGFOOD_BUILD; + public static TouchController[] createTouchControllers(Launcher launcher) { if (launcher.getDeviceProfile().isVerticalBarLayout()) { @@ -77,4 +84,15 @@ public class UiFactory { } menu.show(); } + + public static Bitmap createFromRenderer(int width, int height, boolean forceSoftwareRenderer, + BitmapRenderer renderer) { + if (USE_HARDWARE_BITMAP && !forceSoftwareRenderer) { + return RecentsTransition.createHardwareBitmap(width, height, renderer::render); + } else { + Bitmap result = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888); + renderer.render(new Canvas(result)); + return result; + } + } } |