OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/sync/sessions/sessions_sync_manager.h" | 5 #include "chrome/browser/sync/sessions/sessions_sync_manager.h" |
6 | 6 |
7 #include "chrome/browser/chrome_notification_types.h" | 7 #include "chrome/browser/chrome_notification_types.h" |
8 #include "chrome/browser/profiles/profile.h" | 8 #include "chrome/browser/profiles/profile.h" |
9 #include "chrome/browser/sync/glue/synced_tab_delegate.h" | 9 #include "chrome/browser/sync/glue/synced_tab_delegate.h" |
10 #include "chrome/browser/sync/glue/synced_window_delegate.h" | 10 #include "chrome/browser/sync/glue/synced_window_delegate.h" |
(...skipping 898 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
909 session_tab->current_navigation_index = tab_delegate.GetCurrentEntryIndex(); | 909 session_tab->current_navigation_index = tab_delegate.GetCurrentEntryIndex(); |
910 session_tab->pinned = tab_delegate.IsPinned(); | 910 session_tab->pinned = tab_delegate.IsPinned(); |
911 session_tab->extension_app_id = tab_delegate.GetExtensionAppId(); | 911 session_tab->extension_app_id = tab_delegate.GetExtensionAppId(); |
912 session_tab->user_agent_override.clear(); | 912 session_tab->user_agent_override.clear(); |
913 session_tab->timestamp = mtime; | 913 session_tab->timestamp = mtime; |
914 const int current_index = tab_delegate.GetCurrentEntryIndex(); | 914 const int current_index = tab_delegate.GetCurrentEntryIndex(); |
915 const int pending_index = tab_delegate.GetPendingEntryIndex(); | 915 const int pending_index = tab_delegate.GetPendingEntryIndex(); |
916 const int min_index = std::max(0, current_index - kMaxSyncNavigationCount); | 916 const int min_index = std::max(0, current_index - kMaxSyncNavigationCount); |
917 const int max_index = std::min(current_index + kMaxSyncNavigationCount, | 917 const int max_index = std::min(current_index + kMaxSyncNavigationCount, |
918 tab_delegate.GetEntryCount()); | 918 tab_delegate.GetEntryCount()); |
919 bool is_managed = tab_delegate.ProfileIsManaged(); | 919 bool is_supervised = tab_delegate.ProfileIsSupervised(); |
920 session_tab->navigations.clear(); | 920 session_tab->navigations.clear(); |
921 | 921 |
922 for (int i = min_index; i < max_index; ++i) { | 922 for (int i = min_index; i < max_index; ++i) { |
923 const NavigationEntry* entry = (i == pending_index) ? | 923 const NavigationEntry* entry = (i == pending_index) ? |
924 tab_delegate.GetPendingEntry() : tab_delegate.GetEntryAtIndex(i); | 924 tab_delegate.GetPendingEntry() : tab_delegate.GetEntryAtIndex(i); |
925 DCHECK(entry); | 925 DCHECK(entry); |
926 if (!entry->GetVirtualURL().is_valid()) | 926 if (!entry->GetVirtualURL().is_valid()) |
927 continue; | 927 continue; |
928 | 928 |
929 session_tab->navigations.push_back( | 929 session_tab->navigations.push_back( |
930 SerializedNavigationEntry::FromNavigationEntry(i, *entry)); | 930 SerializedNavigationEntry::FromNavigationEntry(i, *entry)); |
931 if (is_managed) { | 931 if (is_supervised) { |
932 session_tab->navigations.back().set_blocked_state( | 932 session_tab->navigations.back().set_blocked_state( |
933 SerializedNavigationEntry::STATE_ALLOWED); | 933 SerializedNavigationEntry::STATE_ALLOWED); |
934 } | 934 } |
935 } | 935 } |
936 | 936 |
937 if (is_managed) { | 937 if (is_supervised) { |
938 const std::vector<const NavigationEntry*>& blocked_navigations = | 938 const std::vector<const NavigationEntry*>& blocked_navigations = |
939 *tab_delegate.GetBlockedNavigations(); | 939 *tab_delegate.GetBlockedNavigations(); |
940 int offset = session_tab->navigations.size(); | 940 int offset = session_tab->navigations.size(); |
941 for (size_t i = 0; i < blocked_navigations.size(); ++i) { | 941 for (size_t i = 0; i < blocked_navigations.size(); ++i) { |
942 session_tab->navigations.push_back( | 942 session_tab->navigations.push_back( |
943 SerializedNavigationEntry::FromNavigationEntry( | 943 SerializedNavigationEntry::FromNavigationEntry( |
944 i + offset, *blocked_navigations[i])); | 944 i + offset, *blocked_navigations[i])); |
945 session_tab->navigations.back().set_blocked_state( | 945 session_tab->navigations.back().set_blocked_state( |
946 SerializedNavigationEntry::STATE_BLOCKED); | 946 SerializedNavigationEntry::STATE_BLOCKED); |
947 // TODO(bauerb): Add categories | 947 // TODO(bauerb): Add categories |
(...skipping 27 matching lines...) Expand all Loading... |
975 << " with age " << session_age_in_days << ", deleting."; | 975 << " with age " << session_age_in_days << ", deleting."; |
976 DeleteForeignSessionInternal(session_tag, &changes); | 976 DeleteForeignSessionInternal(session_tag, &changes); |
977 } | 977 } |
978 } | 978 } |
979 | 979 |
980 if (!changes.empty()) | 980 if (!changes.empty()) |
981 sync_processor_->ProcessSyncChanges(FROM_HERE, changes); | 981 sync_processor_->ProcessSyncChanges(FROM_HERE, changes); |
982 } | 982 } |
983 | 983 |
984 }; // namespace browser_sync | 984 }; // namespace browser_sync |
OLD | NEW |