Loading src/com/android/settings/KeyguardAppWidgetPickActivity.java +19 −27 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -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); Loading Loading @@ -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) { Loading Loading @@ -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; Loading @@ -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(); } Loading @@ -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); } 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); Loading @@ -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); } } Loading Loading
src/com/android/settings/KeyguardAppWidgetPickActivity.java +19 −27 Original line number Diff line number Diff line Loading @@ -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 Loading Loading @@ -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); Loading Loading @@ -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) { Loading Loading @@ -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; Loading @@ -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(); } Loading @@ -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); } 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); Loading @@ -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); } } Loading