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

Issue 2791183003: [Sync] Restore previous session if no tabbed windows present (Closed)

Created:
3 years, 8 months ago by Nicolas Zea
Modified:
3 years, 8 months ago
Reviewers:
Ted C, skym, Patrick Noland
CC:
chromium-reviews, sync-reviews_chromium.org
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

[Sync] Restore previous session if no tabbed windows present First, adds logic to support restoring the in-memory representation of the local session based on the previous synced version of that session. This involves updating rewriting SessionIds and updating the SyncedSessionTracker on each startup. Second, adds logic to include the previously synced session as part of reassociation if the current session have at least one tabbed window. This addresses the issue in Android where a custom tab can be opened without the original Chrome for Android session being restored. We still want to sync the custom tab's data, but don't want to lose the old session. Lastly, this fixes an issue where the default value for Sync ids that are persisted outside of sync (e.g. in the Android Tab state) were being initialized to 0. 0 Is a valid sync id, so initialize them to -1. BUG=639009 Review-Url: https://codereview.chromium.org/2791183003 Cr-Commit-Position: refs/heads/master@{#465156} Committed: https://chromium.googlesource.com/chromium/src/+/92d4a108882a01897d144d810bc22bcce20e9b46

Patch Set 1 #

Patch Set 2 : Fix logging and android sync id #

Patch Set 3 : Self review #

Total comments: 14

Patch Set 4 : Address comments #

Patch Set 5 : Fix android compile #

Patch Set 6 : Fix ios compile #

Total comments: 4

Patch Set 7 : Address missing TabNodeId references #

Patch Set 8 : Fix android compile #

Unified diffs Side-by-side diffs Delta from patch set Stats (+480 lines, -195 lines) Patch
M chrome/android/java/src/org/chromium/chrome/browser/TabState.java View 1 2 3 3 chunks +4 lines, -3 lines 0 comments Download
M chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java View 1 2 3 4 5 6 7 2 chunks +2 lines, -1 line 0 comments Download
M chrome/browser/ui/sync/tab_contents_synced_tab_delegate.cc View 1 2 3 4 5 6 2 chunks +3 lines, -1 line 0 comments Download
M components/sync/android/java/src/org/chromium/components/sync/SyncConstants.java View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M components/sync_sessions/sessions_sync_manager.h View 1 2 3 3 chunks +12 lines, -5 lines 0 comments Download
M components/sync_sessions/sessions_sync_manager.cc View 1 2 3 4 11 chunks +239 lines, -128 lines 0 comments Download
M components/sync_sessions/sessions_sync_manager_unittest.cc View 11 chunks +158 lines, -41 lines 0 comments Download
M components/sync_sessions/synced_session_tracker.h View 1 2 2 chunks +5 lines, -4 lines 0 comments Download
M components/sync_sessions/synced_session_tracker.cc View 1 2 3 chunks +12 lines, -10 lines 0 comments Download
M components/sync_sessions/synced_session_tracker_unittest.cc View 1 2 3 chunks +39 lines, -1 line 0 comments Download
M ios/chrome/browser/sync/ios_chrome_synced_tab_delegate.mm View 1 2 3 4 5 2 chunks +3 lines, -1 line 0 comments Download

Messages

Total messages: 31 (22 generated)
Nicolas Zea
PTAL!
3 years, 8 months ago (2017-04-17 18:44:55 UTC) #5
skym
lgtm There is so much logic in sessions sync manager. :( https://codereview.chromium.org/2791183003/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/TabState.java File chrome/android/java/src/org/chromium/chrome/browser/TabState.java (right): ...
3 years, 8 months ago (2017-04-17 20:37:02 UTC) #8
Nicolas Zea
Comments addressed. Ted, PTAL for Android changes https://codereview.chromium.org/2791183003/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/TabState.java File chrome/android/java/src/org/chromium/chrome/browser/TabState.java (right): https://codereview.chromium.org/2791183003/diff/40001/chrome/android/java/src/org/chromium/chrome/browser/TabState.java#newcode259 chrome/android/java/src/org/chromium/chrome/browser/TabState.java:259: tabState.syncId = ...
3 years, 8 months ago (2017-04-17 21:24:54 UTC) #16
Ted C
android lgtm https://codereview.chromium.org/2791183003/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java File chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java (right): https://codereview.chromium.org/2791183003/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java#newcode180 chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java:180: private int mSyncId = -1; should this ...
3 years, 8 months ago (2017-04-18 04:53:49 UTC) #19
Nicolas Zea
Thanks! Comments addressed. https://codereview.chromium.org/2791183003/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java File chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java (right): https://codereview.chromium.org/2791183003/diff/100001/chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java#newcode180 chrome/android/java/src/org/chromium/chrome/browser/tab/Tab.java:180: private int mSyncId = -1; On ...
3 years, 8 months ago (2017-04-18 05:04:11 UTC) #20
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/2791183003/120001
3 years, 8 months ago (2017-04-18 05:04:52 UTC) #23
commit-bot: I haz the power
Try jobs failed on following builders: android_n5x_swarming_rel on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_n5x_swarming_rel/builds/159329) linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, ...
3 years, 8 months ago (2017-04-18 05:26:51 UTC) #25
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/2791183003/140001
3 years, 8 months ago (2017-04-18 05:39:17 UTC) #28
commit-bot: I haz the power
3 years, 8 months ago (2017-04-18 06:26:23 UTC) #31
Message was sent while issue was closed.
Committed patchset #8 (id:140001) as
https://chromium.googlesource.com/chromium/src/+/92d4a108882a01897d144d810bc2...

Powered by Google App Engine
This is Rietveld 408576698