Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(407)

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java

Issue 1285313003: [Offline pages] Wiring saving and opening offline page (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address feedback Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java
index c743a0241becf699cbf84c1f34578da0189e472c..25afcc3c75367719230adae91d3d530c9ae96ff3 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java
@@ -21,6 +21,7 @@ import org.chromium.chrome.browser.ChromeBrowserProviderClient;
import org.chromium.chrome.browser.IntentHandler;
import org.chromium.chrome.browser.UrlConstants;
import org.chromium.chrome.browser.document.ChromeLauncherActivity;
+import org.chromium.chrome.browser.enhancedbookmarks.EnhancedBookmarksModel.AddBookmarkCallback;
import org.chromium.chrome.browser.favicon.FaviconHelper;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.chrome.browser.snackbar.Snackbar;
@@ -61,44 +62,54 @@ public class EnhancedBookmarkUtils {
* If the tab has already been bookmarked, start {@link EnhancedBookmarkEditActivity} for the
* bookmark. If not, add the bookmark to bookmarkmodel, and show a snackbar notifying the user.
*/
- public static void addOrEditBookmark(long idToAdd, EnhancedBookmarksModel bookmarkModel,
+ public static void addOrEditBookmark(long idToAdd, final EnhancedBookmarksModel bookmarkModel,
Tab tab, final SnackbarManager snackbarManager, final Activity activity) {
if (idToAdd != ChromeBrowserProviderClient.INVALID_BOOKMARK_ID) {
startEditActivity(activity, new BookmarkId(idToAdd, BookmarkType.NORMAL));
return;
}
- final BookmarkId enhancedId = bookmarkModel
- .addBookmark(bookmarkModel.getDefaultFolder(), 0, tab.getTitle(), tab.getUrl());
-
- Pair<EnhancedBookmarksModel, BookmarkId> pair = Pair.create(bookmarkModel, enhancedId);
-
- SnackbarController snackbarController = new SnackbarController() {
- @Override
- public void onDismissForEachType(boolean isTimeout) {}
-
+ AddBookmarkCallback callback = new AddBookmarkCallback() {
@Override
- public void onDismissNoAction(Object actionData) {
- // This method will be called only if the snackbar is dismissed by timeout.
- @SuppressWarnings("unchecked")
- Pair<EnhancedBookmarksModel, BookmarkId> pair = (Pair<
- EnhancedBookmarksModel, BookmarkId>) actionData;
- pair.first.destroy();
- }
-
- @Override
- public void onAction(Object actionData) {
- @SuppressWarnings("unchecked")
- Pair<EnhancedBookmarksModel, BookmarkId> pair = (Pair<
- EnhancedBookmarksModel, BookmarkId>) actionData;
- // Show edit activity with the name of parent folder highlighted.
- startEditActivity(activity, enhancedId);
- pair.first.destroy();
+ public void onBookmarkAdded(final BookmarkId enhancedId) {
+ Pair<EnhancedBookmarksModel, BookmarkId> pair =
+ Pair.create(bookmarkModel, enhancedId);
+
+ SnackbarController snackbarController = new SnackbarController() {
+ @Override
+ public void onDismissForEachType(boolean isTimeout) {}
+
+ @Override
+ public void onDismissNoAction(Object actionData) {
+ // This method will be called only if the snackbar is dismissed by timeout.
+ @SuppressWarnings("unchecked")
+ Pair<EnhancedBookmarksModel, BookmarkId> pair = (Pair<
+ EnhancedBookmarksModel, BookmarkId>) actionData;
+ pair.first.destroy();
+ }
+
+ @Override
+ public void onAction(Object actionData) {
+ @SuppressWarnings("unchecked")
+ Pair<EnhancedBookmarksModel, BookmarkId> pair = (Pair<
+ EnhancedBookmarksModel, BookmarkId>) actionData;
+ // Show edit activity with the name of parent folder highlighted.
+ startEditActivity(activity, enhancedId);
+ pair.first.destroy();
+ }
+ };
+
+ int messageId = bookmarkModel.getOfflinePageBridge() == null
+ ? R.string.enhanced_bookmark_page_saved
+ : R.string.enhanced_bookmark_page_saved_offline_pages;
+ snackbarManager.showSnackbar(Snackbar.make(
+ activity.getString(messageId), snackbarController)
+ .setAction(activity.getString(R.string.enhanced_bookmark_item_edit), pair));
}
};
- snackbarManager.showSnackbar(Snackbar.make(
- activity.getString(R.string.enhanced_bookmark_page_saved), snackbarController)
- .setAction(activity.getString(R.string.enhanced_bookmark_item_edit), pair));
+
+ bookmarkModel.addBookmarkAsync(bookmarkModel.getDefaultFolder(), 0, tab.getTitle(),
+ tab.getUrl(), tab.getWebContents(), callback);
Kibeom Kim (inactive) 2015/08/13 20:43:48 Hmm... so are we saving offline always even on a b
jianli 2015/08/13 22:37:18 Yes when OfflinePageBridge.isEnabled() is true. Th
}
/**

Powered by Google App Engine
This is Rietveld 408576698