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

Unified Diff: components/sync_sessions/sessions_sync_manager.h

Issue 2776633003: Add taskid for navigation, created in session sync (Closed)
Patch Set: Fixing a bug where root of the task is not considered and addressing comments. Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/sync_sessions/sessions_sync_manager.h
diff --git a/components/sync_sessions/sessions_sync_manager.h b/components/sync_sessions/sessions_sync_manager.h
index d685c65cd42b58f7cb22d4b2b3b6810761165eec..4366947c36da8c3ec7bb115487e39643439a7748 100644
--- a/components/sync_sessions/sessions_sync_manager.h
+++ b/components/sync_sessions/sessions_sync_manager.h
@@ -30,6 +30,7 @@
#include "components/sync_sessions/revisit/page_revisit_broadcaster.h"
#include "components/sync_sessions/synced_session.h"
#include "components/sync_sessions/synced_session_tracker.h"
+#include "components/sync_sessions/task_tracker.h"
namespace syncer {
class LocalDeviceInfoProvider;
@@ -238,6 +239,12 @@ class SessionsSyncManager : public syncer::SyncableService,
void LocalTabDelegateToSpecifics(const SyncedTabDelegate& tab_delegate,
sync_pb::SessionSpecifics* specifics);
+ // Updates task tracker with current navigation, and fills TabNavigation's
+ // task id related fields in |specifics|.
+ void TrackTasks(SessionID::id_type tab_id,
+ SyncedTabDelegate* const tab_delegate,
+ sync_pb::SessionSpecifics* specifics);
+
// It's possible that when we associate windows, tabs aren't all loaded
// into memory yet (e.g on android) and we don't have a WebContents. In this
// case we can't do a full association, but we still want to update tab IDs
@@ -323,6 +330,10 @@ class SessionsSyncManager : public syncer::SyncableService,
// Callback to inform sync that a sync data refresh is requested.
base::Closure datatype_refresh_callback_;
+ // Tracks Chrome Tasks, which associates navigations, with tab and navigation
+ // changes of current session.
+ std::unique_ptr<TaskTracker> task_tracker_;
+
DISALLOW_COPY_AND_ASSIGN(SessionsSyncManager);
};

Powered by Google App Engine
This is Rietveld 408576698