Chromium Code Reviews| Index: chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkModel.java |
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkModel.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkModel.java |
| index 43e777683d46147c003f8ee1b3211dfbb9fc8e29..7d60040c37db0986d0a411ff8882e20d283d9fa1 100644 |
| --- a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkModel.java |
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/BookmarkModel.java |
| @@ -7,6 +7,7 @@ package org.chromium.chrome.browser.bookmarks; |
| import org.chromium.base.ObserverList; |
| import org.chromium.base.VisibleForTesting; |
| import org.chromium.base.metrics.RecordHistogram; |
| +import org.chromium.chrome.browser.offlinepages.ClientId; |
| import org.chromium.chrome.browser.offlinepages.OfflinePageBridge; |
| import org.chromium.chrome.browser.offlinepages.OfflinePageBridge.OfflinePageModelObserver; |
| import org.chromium.chrome.browser.offlinepages.OfflinePageBridge.SavePageCallback; |
| @@ -233,7 +234,8 @@ public class BookmarkModel extends BookmarkBridge { |
| if (mOfflinePageBridge != null) { |
| RecordHistogram.recordBooleanHistogram("OfflinePages.IncognitoSave", |
| webContents.isIncognito()); |
| - mOfflinePageBridge.savePage(webContents, bookmarkId, new SavePageCallback() { |
| + ClientId clientId = offlineClientIdForBookmarkId(bookmarkId); |
| + mOfflinePageBridge.savePage(webContents, clientId, new SavePageCallback() { |
| @Override |
| public void onSavePageDone(int savePageResult, String url, long offlineId) { |
| int saveResult; |
| @@ -268,8 +270,9 @@ public class BookmarkModel extends BookmarkBridge { |
| String url = getBookmarkById(bookmarkId).getUrl(); |
| if (mOfflinePageBridge == null) return url; |
| + ClientId clientId = offlineClientIdForBookmarkId(bookmarkId); |
| return mOfflinePageBridge.getLaunchUrlAndMarkAccessed( |
| - mOfflinePageBridge.getPageByBookmarkId(bookmarkId), url); |
| + mOfflinePageBridge.getPageByClientId(clientId), url); |
| } |
| /** |
| @@ -299,8 +302,9 @@ public class BookmarkModel extends BookmarkBridge { |
| List<BookmarkId> bookmarkIds = new ArrayList<BookmarkId>(); |
| for (OfflinePageItem offlinePage : offlinePages) { |
| - if (existingBookmarks.contains(offlinePage.getBookmarkId())) { |
| - bookmarkIds.add(offlinePage.getBookmarkId()); |
| + BookmarkId bookmarkId = bookmarkIdForOfflineClientId(offlinePage.getClientId()); |
| + if (existingBookmarks.contains(bookmarkId)) { |
| + bookmarkIds.add(bookmarkId); |
| } |
| } |
| return bookmarkIds; |
| @@ -312,4 +316,13 @@ public class BookmarkModel extends BookmarkBridge { |
| public OfflinePageBridge getOfflinePageBridge() { |
| return mOfflinePageBridge; |
| } |
| + |
| + public static ClientId offlineClientIdForBookmarkId(BookmarkId id) { |
| + return new ClientId(OfflinePageBridge.BOOKMARK_NAMESPACE, Long.toString(id.getId())); |
|
Dmitry Titov
2016/02/29 21:24:58
Perhaps should use BookmarkId.toString() here and
bburns
2016/02/29 21:41:22
Done.
|
| + } |
| + |
| + public static BookmarkId bookmarkIdForOfflineClientId(ClientId id) { |
| + int bookmarkId = Integer.parseInt(id.getId()); |
| + return new BookmarkId(BookmarkType.NORMAL, bookmarkId); |
| + } |
| } |