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

Issue 1440623004: [Enhanced Bookmark]Rewrite initialization logic (Closed)

Created:
5 years, 1 month ago by Ian Wen
Modified:
5 years ago
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[Enhanced Bookmark]Rewrite initialization logic It proves to be really hard to change the first content users see in bookmark manager on both phones and tablets. This is because EBManager does not initialize itself the same as other native pages. This CL proposes a different approach about initializing the bookmark manager. In EBManager's constructor, it will always initialize itself in the loading mode. And after the constructor returns, EBPage and EBActivity call updateForUrl() with an initial url that is determined by some complicated logics in EBUtils. This procedure aligns with NativePageFactory's logic. To achieve this goal, several changes have been made: 1. Loading state no longer carries a url. Instead mInitialUrl is created to catch that info. 2. Detecting bookmark model loaded state has been made simple by introducing doAfterBookmarkModelLoaded in BookmarksBridge. 3. Now both EBActivity and EBPage need to call EBmanager#updateForUrl. 4. EBPage no longer calls tab#loadUrl if this url change is originally initiated by tab itself. BUG=554595 Committed: https://crrev.com/27f0872193b01629cbd041d07a78fc014970e03a Cr-Commit-Position: refs/heads/master@{#362910}

Patch Set 1 #

Total comments: 2

Patch Set 2 : decouple this CL with experiments #

Total comments: 11

Patch Set 3 : address newt's comments #

Total comments: 2

Patch Set 4 : rewrote a function #

Patch Set 5 : Rewrite the initilization code for EB #

Total comments: 6

Patch Set 6 : address fgorski's comments #

Total comments: 29

Patch Set 7 : respond to newt's comments #

Total comments: 14

Patch Set 8 : Added another class: EBUIState. All EB will be remaned to B this month. #

Total comments: 20

Patch Set 9 : nits and renamings #

Total comments: 1

Patch Set 10 : #

Patch Set 11 : Thank you, findbug #

Unified diffs Side-by-side diffs Delta from patch set Stats (+428 lines, -315 lines) Patch
M chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java View 1 2 3 4 5 6 7 1 chunk +23 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkActivity.java View 1 2 3 4 5 6 2 chunks +6 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkBookmarkRow.java View 1 2 3 4 5 6 7 3 chunks +5 lines, -6 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkDelegate.java View 1 2 3 4 5 6 7 1 chunk +1 line, -1 line 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkDrawerListView.java View 1 2 3 4 5 6 7 3 chunks +6 lines, -6 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkDrawerListViewAdapter.java View 1 2 3 4 5 6 7 3 chunks +3 lines, -4 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkFilter.java View 1 2 3 4 5 6 7 1 chunk +12 lines, -1 line 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkItemsAdapter.java View 1 2 3 4 5 6 7 8 5 chunks +9 lines, -9 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java View 1 2 3 4 5 6 7 13 chunks +60 lines, -239 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkPage.java View 1 2 3 4 5 3 chunks +3 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkRecyclerView.java View 1 2 3 4 5 1 chunk +5 lines, -0 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUIState.java View 1 2 3 4 5 6 7 8 9 10 1 chunk +158 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java View 1 2 3 4 5 6 7 8 7 chunks +60 lines, -48 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkTest.java View 1 2 3 4 5 6 7 8 9 4 chunks +77 lines, -1 line 0 comments Download

Messages

Total messages: 40 (12 generated)
Ian Wen
PTAL. :)
5 years, 1 month ago (2015-11-12 00:40:40 UTC) #2
Kibeom Kim (inactive)
lgtm I think it's more urgent to fix the bugs introduced by https://codereview.chromium.org/1425293009 , which ...
5 years, 1 month ago (2015-11-12 01:50:21 UTC) #3
Ian Wen
PTAL the new patch.
5 years, 1 month ago (2015-11-12 02:05:30 UTC) #4
newt (away)
https://codereview.chromium.org/1440623004/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java (right): https://codereview.chromium.org/1440623004/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java#newcode53 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java:53: private static final String PREF_LAST_USED_URL = "enhanced_bookmark_last_used_url"; Weren't you ...
5 years, 1 month ago (2015-11-12 02:29:40 UTC) #6
Ian Wen
PTAL. https://codereview.chromium.org/1440623004/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java (right): https://codereview.chromium.org/1440623004/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java#newcode53 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java:53: private static final String PREF_LAST_USED_URL = "enhanced_bookmark_last_used_url"; On ...
5 years, 1 month ago (2015-11-12 18:43:24 UTC) #7
newt (away)
lgtm with suggestion https://codereview.chromium.org/1440623004/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java (right): https://codereview.chromium.org/1440623004/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java#newcode265 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkUtils.java:265: if (!isEnhancedBookmarkEnabled()) { On 2015/11/12 18:43:24, ...
5 years, 1 month ago (2015-11-12 19:07:53 UTC) #8
Ian Wen
I just realize after this CL the experiment will still be broken, on phone only ...
5 years, 1 month ago (2015-11-12 22:07:42 UTC) #9
Ian Wen
Hey guys, I rewrote some of the initialization logic for EnhancedBookmarks, and it may affects ...
5 years, 1 month ago (2015-11-13 02:51:29 UTC) #13
fgorski
https://codereview.chromium.org/1440623004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java (right): https://codereview.chromium.org/1440623004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java#newcode273 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java:273: EnhancedBookmarkUtils.setLastUsedUrl(mActivity, state.mUrl); This may be something that we don't ...
5 years, 1 month ago (2015-11-13 17:06:28 UTC) #14
Ian Wen
https://codereview.chromium.org/1440623004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java (right): https://codereview.chromium.org/1440623004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java#newcode273 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java:273: EnhancedBookmarkUtils.setLastUsedUrl(mActivity, state.mUrl); On 2015/11/13 17:06:27, fgorski wrote: > This ...
5 years, 1 month ago (2015-11-13 19:59:00 UTC) #15
fgorski
https://codereview.chromium.org/1440623004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java (right): https://codereview.chromium.org/1440623004/diff/80001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java#newcode273 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkManager.java:273: EnhancedBookmarkUtils.setLastUsedUrl(mActivity, state.mUrl); On 2015/11/13 19:58:59, Ian Wen wrote: > ...
5 years, 1 month ago (2015-11-13 20:03:00 UTC) #16
Ian Wen
newt@ or kkimlabs@ this CL looks quite different than my first try. PTAL. fgorski@ please ...
5 years, 1 month ago (2015-11-17 00:54:18 UTC) #17
fgorski
On 2015/11/17 00:54:18, Ian Wen wrote: > newt@ or kkimlabs@ this CL looks quite different ...
5 years, 1 month ago (2015-11-17 23:15:30 UTC) #18
Ian Wen
On 2015/11/17 23:15:30, fgorski wrote: > On 2015/11/17 00:54:18, Ian Wen wrote: > > newt@ ...
5 years, 1 month ago (2015-11-17 23:20:38 UTC) #19
fgorski
On 2015/11/17 23:20:38, Ian Wen wrote: > On 2015/11/17 23:15:30, fgorski wrote: > > On ...
5 years, 1 month ago (2015-11-17 23:23:04 UTC) #20
Kibeom Kim (inactive)
looks good to me :) just few minor stuff https://codereview.chromium.org/1440623004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkPage.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkPage.java (right): https://codereview.chromium.org/1440623004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkPage.java#newcode113 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkPage.java:113: ...
5 years, 1 month ago (2015-11-19 19:18:19 UTC) #21
newt (away)
https://codereview.chromium.org/1440623004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java File chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java (right): https://codereview.chromium.org/1440623004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java#newcode210 chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java:210: * If bookmark model is loaded, execute the runnable ...
5 years, 1 month ago (2015-11-19 23:29:29 UTC) #22
Ian Wen
newt@: thanks for the awesome comments. All addressed. https://codereview.chromium.org/1440623004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java File chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java (right): https://codereview.chromium.org/1440623004/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java#newcode210 chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java:210: * ...
5 years ago (2015-12-01 09:17:15 UTC) #23
newt (away)
Thanks for the clean-ups. I still have some high level comments that I think could ...
5 years ago (2015-12-01 19:53:20 UTC) #24
Ian Wen
https://chromiumcodereview.appspot.com/1440623004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java File chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java (right): https://chromiumcodereview.appspot.com/1440623004/diff/120001/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java#newcode210 chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java:210: * Schedule a runnable to run after the bookmark ...
5 years ago (2015-12-02 07:15:59 UTC) #25
newt (away)
This looks much better now! Last few comments I promise :) https://chromiumcodereview.appspot.com/1440623004/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkFilter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkFilter.java (right): ...
5 years ago (2015-12-02 16:21:13 UTC) #26
Ian Wen
https://codereview.chromium.org/1440623004/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkFilter.java File chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkFilter.java (right): https://codereview.chromium.org/1440623004/diff/140001/chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkFilter.java#newcode11 chrome/android/java/src/org/chromium/chrome/browser/enhancedbookmarks/EnhancedBookmarkFilter.java:11: OFFLINE_PAGES("OFFLINE_PAGES"); On 2015/12/02 16:21:12, newt wrote: > Is it ...
5 years ago (2015-12-03 02:33:24 UTC) #27
newt (away)
lgtm after comment :) Feel free to land this and then maybe address the OFFLINE_PAGES->offline ...
5 years ago (2015-12-03 02:46:28 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1440623004/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1440623004/180001
5 years ago (2015-12-03 03:07:10 UTC) #31
commit-bot: I haz the power
Try jobs failed on following builders: android_clang_dbg_recipe on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/android_clang_dbg_recipe/builds/154153)
5 years ago (2015-12-03 03:41:25 UTC) #33
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1440623004/200001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1440623004/200001
5 years ago (2015-12-03 04:11:51 UTC) #36
commit-bot: I haz the power
Committed patchset #11 (id:200001)
5 years ago (2015-12-03 04:55:20 UTC) #38
commit-bot: I haz the power
5 years ago (2015-12-03 04:55:59 UTC) #40
Message was sent while issue was closed.
Patchset 11 (id:??) landed as
https://crrev.com/27f0872193b01629cbd041d07a78fc014970e03a
Cr-Commit-Position: refs/heads/master@{#362910}

Powered by Google App Engine
This is Rietveld 408576698