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

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

Issue 1397233002: [Offline pages] Detecting missing offline copy (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Passing only ID and paths for verification Created 5 years, 2 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/EnhancedBookmarkEditActivity.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java
index d20ec1b303589c62c0dca259fe7336ca079dd9c1..48b0ad5144e0b93fc683f432207230832675af4f 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkEditActivity.java
@@ -23,6 +23,7 @@ import org.chromium.chrome.browser.BookmarksBridge.BookmarkModelObserver;
import org.chromium.chrome.browser.UrlUtilities;
import org.chromium.chrome.browser.offlinepages.OfflinePageBridge;
import org.chromium.chrome.browser.offlinepages.OfflinePageBridge.DeletePageCallback;
+import org.chromium.chrome.browser.offlinepages.OfflinePageBridge.OfflinePageModelObserver;
import org.chromium.chrome.browser.offlinepages.OfflinePageBridge.SavePageCallback;
import org.chromium.chrome.browser.offlinepages.OfflinePageItem;
import org.chromium.chrome.browser.widget.EmptyAlertEditText;
@@ -60,6 +61,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
private MenuItem mDeleteButton;
private OfflineButtonType mOfflineButtonType = OfflineButtonType.NONE;
+ private OfflinePageModelObserver mOfflinePageModelObserver;
private BookmarkModelObserver mBookmarkModelObserver = new BookmarkModelObserver() {
@Override
@@ -129,6 +131,16 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
});
if (OfflinePageBridge.isEnabled()) {
+ mOfflinePageModelObserver = new OfflinePageModelObserver() {
+ @Override
+ public void offlinePageDeleted(BookmarkId bookmarkId) {
+ if (mBookmarkId.equals(bookmarkId)) {
+ updateOfflineSection();
+ }
+ }
+ };
+
+ mEnhancedBookmarksModel.getOfflinePageBridge().addObserver(mOfflinePageModelObserver);
// Make offline page section visible and find controls.
findViewById(R.id.offline_page_group).setVisibility(View.VISIBLE);
getIntent().setExtrasClassLoader(WebContents.class.getClassLoader());
@@ -208,6 +220,10 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
@Override
protected void onDestroy() {
recordOfflineButtonAction(false);
+ if (OfflinePageBridge.isEnabled()) {
+ mEnhancedBookmarksModel.getOfflinePageBridge().removeObserver(
+ mOfflinePageModelObserver);
+ }
mEnhancedBookmarksModel.removeObserver(mBookmarkModelObserver);
mEnhancedBookmarksModel.destroy();
mEnhancedBookmarksModel = null;
@@ -220,6 +236,7 @@ public class EnhancedBookmarkEditActivity extends EnhancedBookmarkActivityBase {
OfflinePageItem offlinePage = mEnhancedBookmarksModel.getOfflinePageBridge()
.getPageByBookmarkId(mBookmarkId);
+ mEnhancedBookmarksModel.getOfflinePageBridge().checkOfflinePageMetadata();
if (offlinePage != null) {
// Offline page exists. Show information and button to remove.
offlinePageInfoTextView.setText(getString(R.string.bookmark_offline_page_size,

Powered by Google App Engine
This is Rietveld 408576698