summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTarun Nainani <tnainani@codeaurora.org>2015-08-29 10:34:40 +0200
committerjrizzoli <joey@cyanogenmoditalia.it>2015-08-29 12:36:49 +0200
commit15b70af63c3fc1d96e9ec19a12dcb423ecc132cc (patch)
tree9190741391c3254060c28a5bd6ab7e0716ca831e
parent4a67fe8e100ba1fd802697f00b520b20677a0df5 (diff)
downloadandroid_packages_apps_Gello-15b70af63c3fc1d96e9ec19a12dcb423ecc132cc.tar.gz
android_packages_apps_Gello-15b70af63c3fc1d96e9ec19a12dcb423ecc132cc.tar.bz2
android_packages_apps_Gello-15b70af63c3fc1d96e9ec19a12dcb423ecc132cc.zip
Do not allow duplicate Bookmark folder
Change-Id: I42f086128fb62805b08c581d09e53fd974d23f02
-rw-r--r--src/src/com/android/browser/AddBookmarkFolder.java39
1 files changed, 38 insertions, 1 deletions
diff --git a/src/src/com/android/browser/AddBookmarkFolder.java b/src/src/com/android/browser/AddBookmarkFolder.java
index faff0274..a396ee83 100644
--- a/src/src/com/android/browser/AddBookmarkFolder.java
+++ b/src/src/com/android/browser/AddBookmarkFolder.java
@@ -350,7 +350,10 @@ public class AddBookmarkFolder extends Activity implements View.OnClickListener,
}
private long addFolderToCurrent(String name) {
- // Add the folder to the database
+ // Add the folder to the database if doesn't already exists
+ if(getIdFromName(name) != -1)
+ return -1;
+
ContentValues values = new ContentValues();
values.put(BrowserContract.Bookmarks.TITLE, name);
values.put(BrowserContract.Bookmarks.IS_FOLDER, 1);
@@ -704,6 +707,8 @@ public class AddBookmarkFolder extends Activity implements View.OnClickListener,
title = cursor.getString(0);
}
}
+ } catch (Exception e) {
+ return title;
} finally {
if (cursor != null) {
cursor.close();
@@ -712,6 +717,36 @@ public class AddBookmarkFolder extends Activity implements View.OnClickListener,
return title;
}
+ // get folder id from folder title
+ private long getIdFromName(String title) {
+ String titleIdString = "-1";
+ Cursor cursor = null;
+ try {
+ cursor = getApplicationContext().getContentResolver().query(
+ BrowserContract.Bookmarks.CONTENT_URI,
+ new String[] {
+ BrowserContract.Bookmarks._ID
+ },
+ BrowserContract.Bookmarks.TITLE + " = ? AND "
+ + BrowserContract.Bookmarks.IS_DELETED + " = ? AND "
+ + BrowserContract.Bookmarks.IS_FOLDER + " = ? ", new String[] {
+ title, 0 + "", 1 + ""
+ }, null);
+ if (cursor != null && cursor.getCount() != 0) {
+ while (cursor.moveToNext()) {
+ titleIdString = cursor.getString(0);
+ }
+ }
+ } catch (Exception e) {
+ return Long.parseLong(titleIdString);
+ } finally {
+ if (cursor != null) {
+ cursor.close();
+ }
+ }
+ return Long.parseLong(titleIdString);
+ }
+
private void showRemoveButton() {
findViewById(R.id.remove_divider).setVisibility(View.VISIBLE);
mRemoveLink = findViewById(R.id.remove);
@@ -934,6 +969,8 @@ public class AddBookmarkFolder extends Activity implements View.OnClickListener,
}
c.close();
}
+ } catch (Exception e) {
+ return info;
} finally {
if (c != null) {
c.close();