diff options
author | Michael Jurka <mikejurka@google.com> | 2012-11-07 01:11:28 -0800 |
---|---|---|
committer | Michael Jurka <mikejurka@google.com> | 2012-11-07 01:12:04 -0800 |
commit | f5336fd114e557fce06197041aab70217308fe90 (patch) | |
tree | 0bd63bc3f952e39a0f16c4c306c23ba07378f6c3 /src/com/android/settings | |
parent | a487bca4700a9dbd5d5d72913d0265ae86815edf (diff) | |
download | packages_apps_settings-f5336fd114e557fce06197041aab70217308fe90.zip packages_apps_settings-f5336fd114e557fce06197041aab70217308fe90.tar.gz packages_apps_settings-f5336fd114e557fce06197041aab70217308fe90.tar.bz2 |
Allowing rotation while adding lockscreen widgets
Also cleaning up some unused code
Bug: 7468012
Diffstat (limited to 'src/com/android/settings')
-rw-r--r-- | src/com/android/settings/KeyguardAppWidgetPickActivity.java | 46 |
1 files changed, 19 insertions, 27 deletions
diff --git a/src/com/android/settings/KeyguardAppWidgetPickActivity.java b/src/com/android/settings/KeyguardAppWidgetPickActivity.java index 5b29720..db5f115 100644 --- a/src/com/android/settings/KeyguardAppWidgetPickActivity.java +++ b/src/com/android/settings/KeyguardAppWidgetPickActivity.java @@ -84,7 +84,6 @@ public class KeyguardAppWidgetPickActivity extends Activity private boolean mAddingToKeyguard = true; private Intent mResultData; private LockPatternUtils mLockPatternUtils; - private boolean mSuccess; private Bundle mExtraConfigureOptions; @Override @@ -202,13 +201,9 @@ public class KeyguardAppWidgetPickActivity extends Activity private PackageManager mPackageManager; private int mIconDpi; private ImageView mView; - private float mDensityScale; public WidgetPreviewLoader(Context context, ImageView v) { super(); mResources = context.getResources(); - DisplayMetrics metrics = new DisplayMetrics(); - ((Activity) context).getWindowManager().getDefaultDisplay().getMetrics(metrics); - mDensityScale = metrics.density; mPackageManager = context.getPackageManager(); ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE); @@ -298,7 +293,6 @@ public class KeyguardAppWidgetPickActivity extends Activity RectCache sCachedAppWidgetPreviewSrcRect = new RectCache(); RectCache sCachedAppWidgetPreviewDestRect = new RectCache(); PaintCache sCachedAppWidgetPreviewPaint = new PaintCache(); - private final float sWidgetPreviewIconPaddingPercentage = 0.25f; private Bitmap getWidgetPreview(ComponentName provider, int previewImage, int iconId, int maxWidth, int maxHeight) { @@ -533,6 +527,11 @@ public class KeyguardAppWidgetPickActivity extends Activity setResultData(result, intent); } else { try { + if (mAddingToKeyguard && mAppWidgetId == AppWidgetManager.INVALID_APPWIDGET_ID) { + // Found in KeyguardHostView.java + final int KEYGUARD_HOST_ID = 0x4B455947; + mAppWidgetId = AppWidgetHost.allocateAppWidgetIdForSystem(KEYGUARD_HOST_ID); + } mAppWidgetManager.bindAppWidgetId( mAppWidgetId, intent.getComponent(), mExtraConfigureOptions); result = RESULT_OK; @@ -554,10 +553,6 @@ public class KeyguardAppWidgetPickActivity extends Activity } protected void onDestroy() { - if (!mSuccess && mAddingToKeyguard && - mAppWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID) { - AppWidgetHost.deleteAppWidgetIdForSystem(mAppWidgetId); - } if (mAppWidgetAdapter != null) { mAppWidgetAdapter.cancelAllWidgetPreviewLoaders(); } @@ -568,20 +563,20 @@ public class KeyguardAppWidgetPickActivity extends Activity public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_PICK_APPWIDGET || requestCode == REQUEST_CREATE_APPWIDGET) { - int appWidgetId = (data == null) ? -1 : data.getIntExtra( - AppWidgetManager.EXTRA_APPWIDGET_ID, -1); - if ((requestCode == REQUEST_PICK_APPWIDGET) && - resultCode == Activity.RESULT_OK) { + int appWidgetId; + if (data == null) { + appWidgetId = AppWidgetManager.INVALID_APPWIDGET_ID ; + } else { + appWidgetId = data.getIntExtra( + AppWidgetManager.EXTRA_APPWIDGET_ID, AppWidgetManager.INVALID_APPWIDGET_ID); + } + if (requestCode == REQUEST_PICK_APPWIDGET && resultCode == Activity.RESULT_OK) { AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(this); - boolean defaultWidget = - data.getBooleanExtra(LockPatternUtils.EXTRA_DEFAULT_WIDGET, false); AppWidgetProviderInfo appWidget = null; - if (!defaultWidget) { - appWidget = appWidgetManager.getAppWidgetInfo(appWidgetId); - } + appWidget = appWidgetManager.getAppWidgetInfo(appWidgetId); - if (!defaultWidget && appWidget.configure != null) { + if (appWidget.configure != null) { // Launch over to configure widget, if needed Intent intent = new Intent(AppWidgetManager.ACTION_APPWIDGET_CONFIGURE); intent.setComponent(appWidget.configure); @@ -591,19 +586,16 @@ public class KeyguardAppWidgetPickActivity extends Activity startActivityForResultSafely(intent, REQUEST_CREATE_APPWIDGET); } else { // Otherwise just add it - if (defaultWidget) { - // If we selected "none", delete the allocated id - AppWidgetHost.deleteAppWidgetIdForSystem(appWidgetId); - data.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, - LockPatternUtils.ID_DEFAULT_STATUS_WIDGET); - } onActivityResult(REQUEST_CREATE_APPWIDGET, Activity.RESULT_OK, data); } } else if (requestCode == REQUEST_CREATE_APPWIDGET && resultCode == Activity.RESULT_OK) { - mSuccess = true; mLockPatternUtils.addAppWidget(appWidgetId, 0); finishDelayedAndShowLockScreen(appWidgetId); } else { + if (mAddingToKeyguard && + mAppWidgetId != AppWidgetManager.INVALID_APPWIDGET_ID) { + AppWidgetHost.deleteAppWidgetIdForSystem(mAppWidgetId); + } finishDelayedAndShowLockScreen(AppWidgetManager.INVALID_APPWIDGET_ID); } } |