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

Issue 2277603002: Extract tabbed mode specific logic from the TabPersistenceStore. (Closed)

Created:
4 years, 4 months ago by Ted C
Modified:
4 years, 3 months ago
Reviewers:
Theresa, Yusuf, gone, agrieve
CC:
chromium-reviews, lizeb+watch-custom-tabs_chromium.org, Peter Wen, Yusuf
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Extract tabbed mode specific logic from the TabPersistenceStore. This adds the concept of a persistence policy that handles the type specific logic of the various tab models interactions. This paves the way for CCT tab persisting. Should mainly be a reshuffling of files with minimal logic changes. Logic changes: 1.) Migration remains exactly as it was...sadly. 2.) Calculating the max tab id now iterates through all files under the root tabs dir (looks at individual tab states and metadata files to calculate the max ID). 3.) Nothing to see here 4.) Clear all now just recursively deletes the files under the base state directory. That seems easier now that we migrated the tab state to a distinct subdirectory. BUG=606513 Committed: https://crrev.com/1382473e75f7ae9fc20ce45356e1c94855ede461 Cr-Commit-Position: refs/heads/master@{#414510}

Patch Set 1 #

Total comments: 44

Patch Set 2 : First round of comments #

Total comments: 4

Patch Set 3 : Switch to just deleting files and not directories #

Total comments: 6

Patch Set 4 : Rebase #

Patch Set 5 : Address dfalcantara@ comments and fix some compilation issues from rebase #

Patch Set 6 : Fix migration task initialization #

Patch Set 7 : Fix file deletion #

Patch Set 8 : Fix findbugs #

Unified diffs Side-by-side diffs Delta from patch set Stats (+836 lines, -508 lines) Patch
M chrome/android/java/src/org/chromium/chrome/browser/customtabs/CustomTabActivity.java View 1 2 3 4 2 chunks +10 lines, -2 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/incognito/IncognitoNotificationService.java View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/tabmodel/DocumentModeAssassin.java View 1 2 3 4 3 chunks +7 lines, -4 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java View 1 2 3 4 2 chunks +2 lines, -11 lines 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java View 1 2 3 4 5 1 chunk +99 lines, -0 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java View 1 2 3 4 5 6 7 29 chunks +143 lines, -409 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabWindowManager.java View 1 2 3 4 1 chunk +3 lines, -1 line 0 comments Download
A chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabbedModeTabPersistencePolicy.java View 1 2 3 4 5 1 chunk +435 lines, -0 lines 0 comments Download
M chrome/android/java_sources.gni View 1 2 3 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/TabsTest.java View 1 4 chunks +3 lines, -5 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/ContextMenuLoadUrlParamsTest.java View 1 2 3 4 1 chunk +2 lines, -1 line 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/DocumentModeAssassinTest.java View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/MultiInstanceMigrationTest.java View 1 10 chunks +42 lines, -29 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/RestoreMigrateTest.java View 1 2 3 4 12 chunks +33 lines, -24 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabModelMergingTest.java View 1 chunk +3 lines, -2 lines 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorTabObserverTest.java View 1 chunk +3 lines, -1 line 0 comments Download
M chrome/android/javatests/src/org/chromium/chrome/browser/tabmodel/TabPersistentStoreTest.java View 1 2 3 4 5 8 chunks +46 lines, -16 lines 0 comments Download

Messages

Total messages: 43 (20 generated)
Ted C
PTAL This "should" be mainly a reshuffling of tabbed mode stuff out of the base ...
4 years, 4 months ago (2016-08-24 00:48:31 UTC) #2
agrieve
Looks like a nice change overall! https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java (right): https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java#newcode43 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java:43: * required, then ...
4 years, 4 months ago (2016-08-24 03:43:09 UTC) #4
Ted C
Thanks for taking an early look! I'll work on addressing these first thing tomorrow. https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java ...
4 years, 4 months ago (2016-08-24 04:27:43 UTC) #5
agrieve
https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java (right): https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java#newcode1316 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java:1316: }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); On 2016/08/24 04:27:43, Ted C wrote: > On ...
4 years, 4 months ago (2016-08-24 13:20:50 UTC) #6
Ted C
https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java (right): https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java#newcode1316 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java:1316: }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); On 2016/08/24 13:20:50, agrieve wrote: > On 2016/08/24 ...
4 years, 4 months ago (2016-08-24 14:12:57 UTC) #7
Ted C
https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java (right): https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java#newcode1316 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java:1316: }.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); On 2016/08/24 14:12:57, Ted C wrote: > On ...
4 years, 4 months ago (2016-08-24 14:37:50 UTC) #8
Ted C
First round of revisions are up https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java (right): https://codereview.chromium.org/2277603002/diff/1/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java#newcode43 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistencePolicy.java:43: * required, then ...
4 years, 4 months ago (2016-08-24 17:10:45 UTC) #9
Theresa
https://codereview.chromium.org/2277603002/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java (left): https://codereview.chromium.org/2277603002/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java#oldcode701 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java:701: // files aren't created before the state files are ...
4 years, 4 months ago (2016-08-24 20:16:58 UTC) #10
Ted C
https://codereview.chromium.org/2277603002/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java (left): https://codereview.chromium.org/2277603002/diff/20001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java#oldcode701 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java:701: // files aren't created before the state files are ...
4 years, 4 months ago (2016-08-24 20:30:34 UTC) #11
gone
lgtm https://chromiumcodereview.appspot.com/2277603002/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java (right): https://chromiumcodereview.appspot.com/2277603002/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java#newcode66 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java:66: * @param selectorIndex The index this selector represents ...
4 years, 4 months ago (2016-08-25 00:44:22 UTC) #12
Ted C
https://codereview.chromium.org/2277603002/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java (right): https://codereview.chromium.org/2277603002/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java#newcode66 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabModelSelectorImpl.java:66: * @param selectorIndex The index this selector represents in ...
4 years, 4 months ago (2016-08-25 02:29:21 UTC) #15
Theresa
Just 1 more comment + test failures https://codereview.chromium.org/2277603002/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java File chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java (right): https://codereview.chromium.org/2277603002/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java#newcode641 chrome/android/java/src/org/chromium/chrome/browser/tabmodel/TabPersistentStore.java:641: : "Only ...
4 years, 4 months ago (2016-08-25 05:33:21 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2277603002/100001
4 years, 3 months ago (2016-08-25 14:02:17 UTC) #21
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2277603002/120001
4 years, 3 months ago (2016-08-25 14:08:23 UTC) #24
Ted C
And to fix the test failures, I needed to undo my changes to how I ...
4 years, 3 months ago (2016-08-25 14:16:03 UTC) #25
Theresa
lgtm
4 years, 3 months ago (2016-08-25 14:45:00 UTC) #26
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_rel_ng/builds/286524)
4 years, 3 months ago (2016-08-25 15:09:18 UTC) #28
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2277603002/140001
4 years, 3 months ago (2016-08-25 15:36:41 UTC) #31
Yusuf
4 years, 3 months ago (2016-08-25 16:18:25 UTC) #35
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/268739)
4 years, 3 months ago (2016-08-25 17:59:24 UTC) #37
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2277603002/140001
4 years, 3 months ago (2016-08-25 18:25:00 UTC) #39
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years, 3 months ago (2016-08-25 19:37:02 UTC) #41
commit-bot: I haz the power
4 years, 3 months ago (2016-08-25 19:40:21 UTC) #43
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/1382473e75f7ae9fc20ce45356e1c94855ede461
Cr-Commit-Position: refs/heads/master@{#414510}

Powered by Google App Engine
This is Rietveld 408576698