diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2008-12-17 18:05:58 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2008-12-17 18:05:58 -0800 |
commit | d097a1880f2339705486d50cd8b33c6088fa9fa5 (patch) | |
tree | 711ec61755822f2bda1d4b2719691db2142ed607 /src/com/android/launcher/UninstallShortcutReceiver.java | |
parent | c8f00b61c600927ab404c84686d4472e9b527976 (diff) | |
download | android_packages_apps_Trebuchet-d097a1880f2339705486d50cd8b33c6088fa9fa5.tar.gz android_packages_apps_Trebuchet-d097a1880f2339705486d50cd8b33c6088fa9fa5.tar.bz2 android_packages_apps_Trebuchet-d097a1880f2339705486d50cd8b33c6088fa9fa5.zip |
Code drop from //branches/cupcake/...@124589
Diffstat (limited to 'src/com/android/launcher/UninstallShortcutReceiver.java')
-rw-r--r-- | src/com/android/launcher/UninstallShortcutReceiver.java | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/com/android/launcher/UninstallShortcutReceiver.java b/src/com/android/launcher/UninstallShortcutReceiver.java index 2d7909e67..e490f9c0f 100644 --- a/src/com/android/launcher/UninstallShortcutReceiver.java +++ b/src/com/android/launcher/UninstallShortcutReceiver.java @@ -21,11 +21,10 @@ import android.content.Context; import android.content.Intent; import android.content.ContentResolver; import android.database.Cursor; +import android.net.Uri; import java.net.URISyntaxException; -import com.android.internal.provider.Settings; - public class UninstallShortcutReceiver extends BroadcastReceiver { public void onReceive(Context context, Intent data) { Intent intent = data.getParcelableExtra(Intent.EXTRA_SHORTCUT_INTENT); @@ -34,18 +33,23 @@ public class UninstallShortcutReceiver extends BroadcastReceiver { if (intent != null && name != null) { final ContentResolver cr = context.getContentResolver(); - Cursor c = cr.query(Settings.Favorites.CONTENT_URI, - new String[] { "_id", "intent" }, "title=?", new String[]{ name }, null); + Cursor c = cr.query(LauncherSettings.Favorites.CONTENT_URI, + new String[] { LauncherSettings.Favorites.ID, LauncherSettings.Favorites.INTENT }, + LauncherSettings.Favorites.TITLE + "=?", new String[] { name }, null); + + final int intentIndex = c.getColumnIndexOrThrow(LauncherSettings.Favorites.INTENT); + final int idIndex = c.getColumnIndexOrThrow(LauncherSettings.Favorites._ID); - final int intentIndex = c.getColumnIndexOrThrow(Settings.Favorites.INTENT); - final int idIndex = c.getColumnIndexOrThrow(Settings.Favorites._ID); + boolean changed = false; try { while (c.moveToNext()) { try { if (intent.filterEquals(Intent.getIntent(c.getString(intentIndex)))) { final long id = c.getLong(idIndex); - cr.delete(Settings.Favorites.getContentUri(id, false), null, null); + final Uri uri = LauncherSettings.Favorites.getContentUri(id, false); + cr.delete(uri, null, null); + changed = true; if (!duplicate) { break; } @@ -58,7 +62,7 @@ public class UninstallShortcutReceiver extends BroadcastReceiver { c.close(); } - cr.notifyChange(Settings.Favorites.CONTENT_URI, null); + if (changed) cr.notifyChange(LauncherSettings.Favorites.CONTENT_URI, null); } } } |