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

Issue 1367063004: Support undoing offline page deletion (Closed)

Created:
5 years, 3 months ago by jianli
Modified:
5 years, 2 months ago
Reviewers:
Ian Wen, fgorski
CC:
chromium-reviews, tfarina, noyau+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Support undoing offline page deletion For a bookmark with offline page, the offline metadata is persisted in a different data store that is keyed by bookmark_id. To support undoing offline page deletion, we need to do the following: 1) Postpone deleting the offline page metadata (and hence offline file) until some time after the duration of snackbar which is the only place Undo is invoked for enhanced bookmarks. 2) When the bookmark node is restored, we need to update the offline page metadata to remove it from being deleted. BUG=491352 TEST=new test added Committed: https://crrev.com/d95ab36868115a5511f13d80abdc9fe8b5df29ff Cr-Commit-Position: refs/heads/master@{#354183}

Patch Set 1 #

Total comments: 23

Patch Set 2 : Address sky's feedback #

Patch Set 3 : Address Filip's feedback #

Total comments: 4

Patch Set 4 : Rework based on undoing bookmark deletion without new ID #

Total comments: 6

Patch Set 5 : Address feedback #

Patch Set 6 : Add the call to removeObserver #

Total comments: 4

Patch Set 7 : One more change #

Total comments: 4

Messages

Total messages: 31 (5 generated)
jianli
5 years, 3 months ago (2015-09-25 01:15:25 UTC) #2
sky
https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model.cc File components/bookmarks/browser/bookmark_model.cc (right): https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model.cc#newcode1051 components/bookmarks/browser/bookmark_model.cc:1051: void BookmarkModel::OnBookmarkRenumbered(int64 old_id, int64 new_id) { Make position of ...
5 years, 2 months ago (2015-09-25 15:54:44 UTC) #3
jianli
https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model.cc File components/bookmarks/browser/bookmark_model.cc (right): https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model.cc#newcode1051 components/bookmarks/browser/bookmark_model.cc:1051: void BookmarkModel::OnBookmarkRenumbered(int64 old_id, int64 new_id) { On 2015/09/25 15:54:44, ...
5 years, 2 months ago (2015-09-25 20:29:24 UTC) #4
fgorski
https://codereview.chromium.org/1367063004/diff/1/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java File chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java (right): https://codereview.chromium.org/1367063004/diff/1/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java#newcode42 chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java:42: return true; /*getSizeOfAllPages() > MINIMUM_TOTAL_SIZE_BYTES Is this correct? https://codereview.chromium.org/1367063004/diff/1/components/offline_pages/offline_page_model.cc ...
5 years, 2 months ago (2015-09-25 20:30:51 UTC) #5
sky
https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model_observer.h File components/bookmarks/browser/bookmark_model_observer.h (right): https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model_observer.h#newcode142 components/bookmarks/browser/bookmark_model_observer.h:142: BookmarkModel* model, int64 old_id, int64 new_id) {} On 2015/09/25 ...
5 years, 2 months ago (2015-09-25 20:38:57 UTC) #6
jianli
https://codereview.chromium.org/1367063004/diff/1/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java File chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java (right): https://codereview.chromium.org/1367063004/diff/1/chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java#newcode42 chrome/android/java/src/org/chromium/chrome/browser/offlinepages/OfflinePageStorageSpacePolicy.java:42: return true; /*getSizeOfAllPages() > MINIMUM_TOTAL_SIZE_BYTES On 2015/09/25 20:30:50, fgorski ...
5 years, 2 months ago (2015-09-25 20:52:36 UTC) #7
fgorski
lgtm with comments https://codereview.chromium.org/1367063004/diff/1/components/offline_pages/offline_page_model_unittest.cc File components/offline_pages/offline_page_model_unittest.cc (right): https://codereview.chromium.org/1367063004/diff/1/components/offline_pages/offline_page_model_unittest.cc#newcode541 components/offline_pages/offline_page_model_unittest.cc:541: TEST_F(OfflinePageModelTest, MarkPageForDeletion) { On 2015/09/25 20:52:36, ...
5 years, 2 months ago (2015-09-25 21:23:57 UTC) #8
jianli
https://codereview.chromium.org/1367063004/diff/1/components/offline_pages/offline_page_model_unittest.cc File components/offline_pages/offline_page_model_unittest.cc (right): https://codereview.chromium.org/1367063004/diff/1/components/offline_pages/offline_page_model_unittest.cc#newcode541 components/offline_pages/offline_page_model_unittest.cc:541: TEST_F(OfflinePageModelTest, MarkPageForDeletion) { On 2015/09/25 21:23:56, fgorski wrote: > ...
5 years, 2 months ago (2015-10-09 23:26:26 UTC) #9
jianli
On 2015/09/25 20:38:57, sky wrote: > https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model_observer.h > File components/bookmarks/browser/bookmark_model_observer.h (right): > > https://codereview.chromium.org/1367063004/diff/1/components/bookmarks/browser/bookmark_model_observer.h#newcode142 > ...
5 years, 2 months ago (2015-10-09 23:28:05 UTC) #10
sky
I don't believe you need me anymore: -sky
5 years, 2 months ago (2015-10-12 15:29:22 UTC) #12
fgorski
Please make sure to pass a result of undoing (canceled) to the caller. Please make ...
5 years, 2 months ago (2015-10-12 20:59:52 UTC) #13
jianli
https://codereview.chromium.org/1367063004/diff/60001/components/offline_pages/offline_page_item.cc File components/offline_pages/offline_page_item.cc (right): https://codereview.chromium.org/1367063004/diff/60001/components/offline_pages/offline_page_item.cc#newcode63 components/offline_pages/offline_page_item.cc:63: flags = static_cast<Flags>(static_cast<int>(flags) | MARKED_FOR_DELETION); On 2015/10/12 20:59:52, fgorski ...
5 years, 2 months ago (2015-10-12 23:33:34 UTC) #14
jianli
Also added the logic to refresh offline page view when something is changed.
5 years, 2 months ago (2015-10-12 23:34:02 UTC) #15
jianli
ianwen, could you please review enhanced bookmark changes?
5 years, 2 months ago (2015-10-13 00:20:25 UTC) #17
Ian Wen
https://codereview.chromium.org/1367063004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java (right): https://codereview.chromium.org/1367063004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java#newcode278 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java:278: mOfflinePageModelObserver = new OfflinePageModelObserver() { Q: why a model ...
5 years, 2 months ago (2015-10-13 00:35:05 UTC) #18
jianli
https://codereview.chromium.org/1367063004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java (right): https://codereview.chromium.org/1367063004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java#newcode278 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java:278: mOfflinePageModelObserver = new OfflinePageModelObserver() { On 2015/10/13 00:35:04, Ian ...
5 years, 2 months ago (2015-10-13 00:57:05 UTC) #19
fgorski
lgtm https://codereview.chromium.org/1367063004/diff/100001/components/offline_pages/offline_page_item.cc File components/offline_pages/offline_page_item.cc (right): https://codereview.chromium.org/1367063004/diff/100001/components/offline_pages/offline_page_item.cc#newcode68 components/offline_pages/offline_page_item.cc:68: static_cast<int>(flags) & ~(static_cast<int>(MARKED_FOR_DELETION))); what about here? Is the ...
5 years, 2 months ago (2015-10-13 16:48:25 UTC) #20
jianli
https://codereview.chromium.org/1367063004/diff/100001/components/offline_pages/offline_page_item.cc File components/offline_pages/offline_page_item.cc (right): https://codereview.chromium.org/1367063004/diff/100001/components/offline_pages/offline_page_item.cc#newcode68 components/offline_pages/offline_page_item.cc:68: static_cast<int>(flags) & ~(static_cast<int>(MARKED_FOR_DELETION))); On 2015/10/13 16:48:25, fgorski wrote: > ...
5 years, 2 months ago (2015-10-14 21:37:21 UTC) #21
Ian Wen
https://chromiumcodereview.appspot.com/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java (right): https://chromiumcodereview.appspot.com/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java#newcode281 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java:281: mDelegate.notifyStateChange(EnhancedBookmarkItemsAdapter.this); 1. Is offline model change capable of removing/adding ...
5 years, 2 months ago (2015-10-14 23:30:01 UTC) #22
jianli
https://codereview.chromium.org/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java (right): https://codereview.chromium.org/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java#newcode281 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java:281: mDelegate.notifyStateChange(EnhancedBookmarkItemsAdapter.this); On 2015/10/14 23:30:01, Ian Wen wrote: > 1. ...
5 years, 2 months ago (2015-10-14 23:40:49 UTC) #23
Ian Wen
https://codereview.chromium.org/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java (right): https://codereview.chromium.org/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java#newcode281 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java:281: mDelegate.notifyStateChange(EnhancedBookmarkItemsAdapter.this); On 2015/10/14 23:40:48, jianli wrote: > On 2015/10/14 ...
5 years, 2 months ago (2015-10-15 00:02:16 UTC) #24
jianli
https://codereview.chromium.org/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java (right): https://codereview.chromium.org/1367063004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java#newcode281 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java:281: mDelegate.notifyStateChange(EnhancedBookmarkItemsAdapter.this); On 2015/10/15 00:02:16, Ian Wen wrote: > On ...
5 years, 2 months ago (2015-10-15 00:05:26 UTC) #25
Ian Wen
lgtm. My previous concern was that we might trigger onModelChanged() in the process of onModelLoaded(), ...
5 years, 2 months ago (2015-10-15 00:21:56 UTC) #26
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1367063004/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1367063004/120001
5 years, 2 months ago (2015-10-15 00:25:41 UTC) #29
commit-bot: I haz the power
Committed patchset #7 (id:120001)
5 years, 2 months ago (2015-10-15 01:08:08 UTC) #30
commit-bot: I haz the power
5 years, 2 months ago (2015-10-15 01:09:02 UTC) #31
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/d95ab36868115a5511f13d80abdc9fe8b5df29ff
Cr-Commit-Position: refs/heads/master@{#354183}

Powered by Google App Engine
This is Rietveld 408576698