From cc3bc30c54278be8fec1a29a7c0a11a129077ea7 Mon Sep 17 00:00:00 2001 From: cretin45 Date: Tue, 22 Dec 2015 13:58:09 -0800 Subject: [PATCH] Trebuchet: Add migration for new messaging app Issue-id: CYNGNOS-1422 Change-Id: Iaf64cdba4333703a73c72997c1ddc353ecdcd24b --- src/com/android/launcher3/LauncherProvider.java | 31 +++++++++++++------------ 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/src/com/android/launcher3/LauncherProvider.java b/src/com/android/launcher3/LauncherProvider.java index 061ac1ae2..cec346ad8 100644 --- a/src/com/android/launcher3/LauncherProvider.java +++ b/src/com/android/launcher3/LauncherProvider.java @@ -768,7 +768,12 @@ public class LauncherProvider extends ContentProvider { } case 27: { // DB Upgraded successfully - updateDialtactsLauncher(db); + migrateLauncherFavorite(db, "com.android.dialer", "com.cyngn.dialer", + "com.android.dialer.DialtactsActivity", + "com.android.dialer.DialtactsActivity"); + migrateLauncherFavorite(db, "com.android.mms", "com.android.messaging", + "com.android.mms.ui.ConversationList", + "com.android.messaging.ui.conversationlist.ConversationListActivity"); return; } } @@ -776,7 +781,6 @@ public class LauncherProvider extends ContentProvider { // DB was not upgraded Log.w(TAG, "Destroying all old data."); createEmptyDB(db); - updateDialtactsLauncher(db); } @Override @@ -972,15 +976,12 @@ public class LauncherProvider extends ContentProvider { return addIntegerColumn(db, Favorites.PROFILE_ID, userSerialNumber); } - private void updateDialtactsLauncher(SQLiteDatabase db) { - if (!Utilities.isPackageInstalled(mContext, "com.cyngn.dialer")) { + private void migrateLauncherFavorite(SQLiteDatabase db, String originalPackageName, + String newPackageName, String originalClassName, String newClassName) { + if (!Utilities.isPackageInstalled(mContext, newPackageName)) { return; } - final String cyngnDialer = "com.cyngn.dialer"; - final String aospDialer = "com.android.dialer"; - final String dialtactsClass = "com.android.dialer.DialtactsActivity"; - final String selectWhere = buildOrWhereString(Favorites.ITEM_TYPE, new int[]{Favorites.ITEM_TYPE_SHORTCUT, Favorites.ITEM_TYPE_APPLICATION}); Cursor c = null; @@ -1004,13 +1005,13 @@ public class LauncherProvider extends ContentProvider { if (Intent.ACTION_MAIN.equals(intent.getAction()) && componentName != null && - aospDialer.equals(componentName.getPackageName()) && - dialtactsClass.equals(componentName.getClassName()) && + originalPackageName.equals(componentName.getPackageName()) && + originalClassName.equals(componentName.getClassName()) && categories != null && categories.contains(Intent.CATEGORY_LAUNCHER)) { - final ComponentName newName = new ComponentName(cyngnDialer, - componentName.getClassName()); + final ComponentName newName = new ComponentName(newPackageName, + newClassName); intent.setComponent(newName); final ContentValues values = new ContentValues(); values.put(Favorites.INTENT, intent.toUri(0)); @@ -1022,16 +1023,16 @@ public class LauncherProvider extends ContentProvider { } } } catch (RuntimeException ex) { - Log.e(TAG, "Problem moving Dialtacts activity", ex); + Log.e(TAG, "Problem moving " + originalClassName + " activity", ex); } catch (URISyntaxException e) { - Log.e(TAG, "Problem moving Dialtacts activity", e); + Log.e(TAG, "Problem moving " + originalClassName + " activity", e); } } } db.setTransactionSuccessful(); } catch (SQLException ex) { - Log.w(TAG, "Problem while upgrading dialtacts icon", ex); + Log.w(TAG, "Problem while upgrading " + originalClassName + " icon", ex); } finally { db.endTransaction(); if (c != null) { -- 2.11.0