summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/WidgetPreviewLoader.java
diff options
context:
space:
mode:
authorAdam Cohen <adamcohen@google.com>2014-03-05 18:07:04 -0800
committerAdam Cohen <adamcohen@google.com>2014-12-05 16:18:41 -0800
commit5940042d39b576553c2499bcf3d0641281e6ad52 (patch)
tree45eb331399dc9f0fd86f4a3dc58dada50fb9ec46 /src/com/android/launcher3/WidgetPreviewLoader.java
parente64b0dfcd0d4113e9259b6270cff734089f4cd3f (diff)
downloadandroid_packages_apps_Trebuchet-5940042d39b576553c2499bcf3d0641281e6ad52.tar.gz
android_packages_apps_Trebuchet-5940042d39b576553c2499bcf3d0641281e6ad52.tar.bz2
android_packages_apps_Trebuchet-5940042d39b576553c2499bcf3d0641281e6ad52.zip
Supporting custom widgets provided by launcher
-> This change provides integration for widgets provided by the launcher package which can run arbitrary code. Change-Id: I6052da5c4afed7ee72e3b44d045b9c46f2d84c42
Diffstat (limited to 'src/com/android/launcher3/WidgetPreviewLoader.java')
-rw-r--r--src/com/android/launcher3/WidgetPreviewLoader.java18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/com/android/launcher3/WidgetPreviewLoader.java b/src/com/android/launcher3/WidgetPreviewLoader.java
index 9cedae0f9..8f2d3edc3 100644
--- a/src/com/android/launcher3/WidgetPreviewLoader.java
+++ b/src/com/android/launcher3/WidgetPreviewLoader.java
@@ -333,7 +333,6 @@ public class WidgetPreviewLoader {
sb.setLength(0);
} else {
sb.append(SHORTCUT_PREFIX);
-
ResolveInfo info = (ResolveInfo) o;
sb.append(new ComponentName(info.activityInfo.packageName,
info.activityInfo.name).flattenToString());
@@ -479,20 +478,19 @@ public class WidgetPreviewLoader {
preview.getHeight() != mPreviewBitmapHeight)) {
throw new RuntimeException("Improperly sized bitmap passed as argument");
}
- if (info instanceof AppWidgetProviderInfo) {
- return generateWidgetPreview((AppWidgetProviderInfo) info, preview);
+ if (info instanceof LauncherAppWidgetProviderInfo) {
+ return generateWidgetPreview((LauncherAppWidgetProviderInfo) info, preview);
} else {
return generateShortcutPreview(
(ResolveInfo) info, mPreviewBitmapWidth, mPreviewBitmapHeight, preview);
}
}
- public Bitmap generateWidgetPreview(AppWidgetProviderInfo info, Bitmap preview) {
- int[] cellSpans = Launcher.getSpanForWidget(mContext, info);
- int maxWidth = maxWidthForWidgetPreview(cellSpans[0]);
- int maxHeight = maxHeightForWidgetPreview(cellSpans[1]);
- return generateWidgetPreview(info, cellSpans[0], cellSpans[1],
- maxWidth, maxHeight, preview, null);
+ public Bitmap generateWidgetPreview(LauncherAppWidgetProviderInfo info, Bitmap preview) {
+ int maxWidth = maxWidthForWidgetPreview(info.spanX);
+ int maxHeight = maxHeightForWidgetPreview(info.spanY);
+ return generateWidgetPreview(info, info.spanX, info.spanY, maxWidth,
+ maxHeight, preview, null);
}
public int maxWidthForWidgetPreview(int spanX) {
@@ -505,7 +503,7 @@ public class WidgetPreviewLoader {
mWidgetSpacingLayout.estimateCellHeight(spanY));
}
- public Bitmap generateWidgetPreview(AppWidgetProviderInfo info, int cellHSpan, int cellVSpan,
+ public Bitmap generateWidgetPreview(LauncherAppWidgetProviderInfo info, int cellHSpan, int cellVSpan,
int maxPreviewWidth, int maxPreviewHeight, Bitmap preview, int[] preScaledWidthOut) {
// Load the preview image if possible
if (maxPreviewWidth < 0) maxPreviewWidth = Integer.MAX_VALUE;