diff options
author | Adam Cohen <adamcohen@google.com> | 2014-03-05 18:07:04 -0800 |
---|---|---|
committer | Adam Cohen <adamcohen@google.com> | 2014-12-05 16:18:41 -0800 |
commit | 5940042d39b576553c2499bcf3d0641281e6ad52 (patch) | |
tree | 45eb331399dc9f0fd86f4a3dc58dada50fb9ec46 /src/com/android/launcher3/LauncherAppWidgetHostView.java | |
parent | e64b0dfcd0d4113e9259b6270cff734089f4cd3f (diff) | |
download | android_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/LauncherAppWidgetHostView.java')
-rw-r--r-- | src/com/android/launcher3/LauncherAppWidgetHostView.java | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/com/android/launcher3/LauncherAppWidgetHostView.java b/src/com/android/launcher3/LauncherAppWidgetHostView.java index e39727b17..ebe55ab78 100644 --- a/src/com/android/launcher3/LauncherAppWidgetHostView.java +++ b/src/com/android/launcher3/LauncherAppWidgetHostView.java @@ -17,6 +17,7 @@ package com.android.launcher3; import android.appwidget.AppWidgetHostView; +import android.appwidget.AppWidgetProviderInfo; import android.content.Context; import android.view.LayoutInflater; import android.view.MotionEvent; @@ -54,10 +55,14 @@ public class LauncherAppWidgetHostView extends AppWidgetHostView implements Touc return mInflater.inflate(R.layout.appwidget_error, this, false); } + public void updateLastInflationOrientation() { + mPreviousOrientation = mContext.getResources().getConfiguration().orientation; + } + @Override public void updateAppWidget(RemoteViews remoteViews) { // Store the orientation in which the widget was inflated - mPreviousOrientation = mContext.getResources().getConfiguration().orientation; + updateLastInflationOrientation(); super.updateAppWidget(remoteViews); } @@ -137,6 +142,16 @@ public class LauncherAppWidgetHostView extends AppWidgetHostView implements Touc } @Override + public AppWidgetProviderInfo getAppWidgetInfo() { + AppWidgetProviderInfo info = super.getAppWidgetInfo(); + if (!(info instanceof LauncherAppWidgetProviderInfo)) { + throw new IllegalStateException("Launcher widget must have" + + "LauncherAppWidgetProviderInfo"); + } + return info; + } + + @Override public void onTouchComplete() { if (!mLongPressHelper.hasPerformedLongPress()) { // If a long press has been performed, we don't want to clear the record of that since |