|
[sync] WebContentsObserver based sessions notifications
Aggregate individual WebContentsObservers to notify sync of sessions changes
This CL introduces the SyncSessionsWebContentsRouter and the
SyncSessionsRouterTabHelper, which replace the old
NotificationServiceSessionsRouter. The SyncSessionsWebContentsRouter
aggregates events from the individual TabHelpers, which are scoped to
individual tabs, and pushes them to SessionsSyncManager.
SyncSessionsWebContentsRouters are given a source tab id property which
is set when a tab is created directly from another tab, e.g. by ctrl
clicking.
Some changes are made to SessionsHelper so that it can continue to
correctly wait for tabs to load without using Notifications.
R=zea@chromium.org
BUG= 695241
Review-Url: https://codereview.chromium.org/2753753005
Cr-Commit-Position: refs/heads/master@{#459225}
Committed: https://chromium.googlesource.com/chromium/src/+/1901afa5e03bad9ce8a72691f746a685038241b0
Total comments: 46
Total comments: 16
Total comments: 4
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+724 lines, -434 lines) |
Patch |
|
M |
chrome/browser/BUILD.gn
|
View
|
1
2
3
4
|
2 chunks |
+10 lines, -2 lines |
0 comments
|
Download
|
|
M |
chrome/browser/sync/chrome_sync_client.cc
|
View
|
1
2
3
|
3 chunks |
+10 lines, -5 lines |
0 comments
|
Download
|
|
M |
chrome/browser/sync/glue/synced_tab_delegate_android.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/sync/glue/synced_tab_delegate_android.cc
|
View
|
|
1 chunk |
+4 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/browser_list_router_helper.h
|
View
|
1
2
3
|
1 chunk |
+42 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/browser_list_router_helper.cc
|
View
|
1
2
3
|
1 chunk |
+45 lines, -0 lines |
0 comments
|
Download
|
|
D |
chrome/browser/sync/sessions/notification_service_sessions_router.h
|
View
|
|
1 chunk |
+0 lines, -84 lines |
0 comments
|
Download
|
|
D |
chrome/browser/sync/sessions/notification_service_sessions_router.cc
|
View
|
|
1 chunk |
+0 lines, -214 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/sync_sessions_router_tab_helper.h
|
View
|
1
2
3
|
1 chunk |
+80 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/sync_sessions_router_tab_helper.cc
|
View
|
1
2
|
1 chunk |
+82 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/sync_sessions_web_contents_router.h
|
View
|
1
2
3
|
1 chunk |
+72 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/sync_sessions_web_contents_router.cc
|
View
|
1
2
3
|
1 chunk |
+80 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/sync_sessions_web_contents_router_factory.h
|
View
|
1
2
|
1 chunk |
+52 lines, -0 lines |
0 comments
|
Download
|
|
A |
chrome/browser/sync/sessions/sync_sessions_web_contents_router_factory.cc
|
View
|
1
2
3
|
1 chunk |
+40 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/sync/test/integration/sessions_helper.h
|
View
|
1
2
3
|
4 chunks |
+24 lines, -10 lines |
0 comments
|
Download
|
|
M |
chrome/browser/sync/test/integration/sessions_helper.cc
|
View
|
1
2
3
|
8 chunks |
+62 lines, -63 lines |
0 comments
|
Download
|
|
M |
chrome/browser/sync/test/integration/single_client_sessions_sync_test.cc
|
View
|
1
2
3
4
|
4 chunks |
+35 lines, -2 lines |
0 comments
|
Download
|
|
M |
chrome/browser/sync/test/integration/two_client_sessions_sync_test.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
chrome/browser/ui/cocoa/app_menu/app_menu_controller_unittest.mm
|
View
|
|
2 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
|
M |
chrome/browser/ui/sync/tab_contents_synced_tab_delegate.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/ui/sync/tab_contents_synced_tab_delegate.cc
|
View
|
|
2 chunks |
+8 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/ui/tab_helpers.cc
|
View
|
1
2
3
4
|
2 chunks |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
chrome/browser/ui/toolbar/recent_tabs_sub_menu_model_unittest.cc
|
View
|
1
2
3
4
|
2 chunks |
+13 lines, -9 lines |
0 comments
|
Download
|
|
M |
components/browser_sync/profile_sync_service.cc
|
View
|
1
2
3
4
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/fake_sync_sessions_client.h
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/fake_sync_sessions_client.cc
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/sessions_sync_manager.h
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/sessions_sync_manager.cc
|
View
|
1
2
|
3 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/sessions_sync_manager_unittest.cc
|
View
|
1
2
|
6 chunks |
+8 lines, -9 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/sync_sessions_client.h
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/synced_session_tracker.cc
|
View
|
1
2
|
6 chunks |
+7 lines, -8 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/synced_session_tracker_unittest.cc
|
View
|
1
2
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/synced_tab_delegate.h
|
View
|
1
2
|
2 chunks |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
components/sync_sessions/tab_node_pool.h
|
View
|
1
2
|
1 chunk |
+0 lines, -1 line |
0 comments
|
Download
|
|
M |
components/sync_sessions/tab_node_pool.cc
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
ios/chrome/browser/sync/ios_chrome_sync_client.mm
|
View
|
1
2
3
4
|
2 chunks |
+12 lines, -8 lines |
0 comments
|
Download
|
|
M |
ios/chrome/browser/sync/ios_chrome_synced_tab_delegate.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
ios/chrome/browser/sync/ios_chrome_synced_tab_delegate.mm
|
View
|
1
2
3
4
|
1 chunk |
+6 lines, -0 lines |
0 comments
|
Download
|
Total messages: 58 (46 generated)
|