diff options
author | Stephen Bird <sbird@cyngn.com> | 2015-08-24 15:07:33 -0700 |
---|---|---|
committer | Stephen Bird <sbird@cyngn.com> | 2015-08-24 15:09:00 -0700 |
commit | 85032a699b4f9d6101599be230257eab7a8cd76a (patch) | |
tree | b16ab633f880e629fce88639263edb8a1abc7b14 | |
parent | 37e57cfc1c5b038e1cfeb7f8c60eb7fb66cbb93d (diff) | |
download | android_packages_apps_CMFileManager-85032a699b4f9d6101599be230257eab7a8cd76a.tar.gz android_packages_apps_CMFileManager-85032a699b4f9d6101599be230257eab7a8cd76a.tar.bz2 android_packages_apps_CMFileManager-85032a699b4f9d6101599be230257eab7a8cd76a.zip |
Bookmarks: check to see if a bookmark exists before adding it
Previously, this would result in multiple bookmarks
of the same location
Ticket: QRDL-989
Change-Id: I0f19045bc7a6d5fa98c9ef4ee1a8ccda9c501eb1
-rw-r--r-- | res/values/strings.xml | 2 | ||||
-rw-r--r-- | src/com/cyanogenmod/filemanager/ui/dialogs/ActionsDialog.java | 2 | ||||
-rw-r--r-- | src/com/cyanogenmod/filemanager/ui/policy/BookmarksActionPolicy.java | 9 |
3 files changed, 12 insertions, 1 deletions
diff --git a/res/values/strings.xml b/res/values/strings.xml index 08980142..75d91ecc 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -378,6 +378,8 @@ <string name="bookmarks_button_remove_bookmark_cd">Remove the bookmark.</string> <!-- Bookmarks - Bookmarks - Actions - Bookmark successfully added --> <string name="bookmarks_msgs_add_success">The bookmark was added successfully.</string> + <!-- Bookmarks - Bookmarks - Actions - Bookmark already exists --> + <string name="bookmarks_msgs_add_exists">The bookmark was already exists.</string> <!-- Initial directory dialog title --> <string name="initial_directory_dialog_title">Initial folder</string> diff --git a/src/com/cyanogenmod/filemanager/ui/dialogs/ActionsDialog.java b/src/com/cyanogenmod/filemanager/ui/dialogs/ActionsDialog.java index 44bfeddc..ecc7ce2c 100644 --- a/src/com/cyanogenmod/filemanager/ui/dialogs/ActionsDialog.java +++ b/src/com/cyanogenmod/filemanager/ui/dialogs/ActionsDialog.java @@ -400,7 +400,7 @@ public class ActionsDialog implements OnItemClickListener, OnItemLongClickListen case R.id.mnu_actions_add_to_bookmarks_current_folder: Bookmark bookmark = BookmarksActionPolicy.addToBookmarks( this.mContext, this.mFso); - if (mBackRef != null) { + if (mBackRef != null && bookmark != null) { // tell NavigationActivity's drawer to add the bookmark mBackRef.addBookmark(bookmark); } diff --git a/src/com/cyanogenmod/filemanager/ui/policy/BookmarksActionPolicy.java b/src/com/cyanogenmod/filemanager/ui/policy/BookmarksActionPolicy.java index ce3fe2e6..483d8abe 100644 --- a/src/com/cyanogenmod/filemanager/ui/policy/BookmarksActionPolicy.java +++ b/src/com/cyanogenmod/filemanager/ui/policy/BookmarksActionPolicy.java @@ -40,6 +40,15 @@ public final class BookmarksActionPolicy extends ActionsPolicy { */ public static Bookmark addToBookmarks(final Context ctx, final FileSystemObject fso) { try { + // Check if the bookmark exists already + if (Bookmarks.getBookmark(ctx.getContentResolver(), fso.getFullPath()) != null) { + DialogHelper.showToast( + ctx, + R.string.bookmarks_msgs_add_exists, + Toast.LENGTH_SHORT); + return null; + } + // Create the bookmark Bookmark bookmark = new Bookmark(BOOKMARK_TYPE.USER_DEFINED, fso.getName(), fso.getFullPath()); |