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

Side by Side Diff: chrome/browser/sessions/session_service.cc

Issue 8956059: Rename NavigationController to NavigationControllerImpl and put it into the content namespace. Al... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 8 years, 11 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/sessions/session_service.h" 5 #include "chrome/browser/sessions/session_service.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <set> 9 #include <set>
10 #include <vector> 10 #include <vector>
(...skipping 25 matching lines...) Expand all
36 #include "content/public/browser/navigation_details.h" 36 #include "content/public/browser/navigation_details.h"
37 #include "content/public/browser/navigation_entry.h" 37 #include "content/public/browser/navigation_entry.h"
38 #include "content/public/browser/notification_service.h" 38 #include "content/public/browser/notification_service.h"
39 #include "content/public/browser/notification_details.h" 39 #include "content/public/browser/notification_details.h"
40 40
41 #if defined(OS_MACOSX) 41 #if defined(OS_MACOSX)
42 #include "chrome/browser/app_controller_cppsafe_mac.h" 42 #include "chrome/browser/app_controller_cppsafe_mac.h"
43 #endif 43 #endif
44 44
45 using base::Time; 45 using base::Time;
46 using content::NavigationEntry;
46 47
47 // Identifier for commands written to file. 48 // Identifier for commands written to file.
48 static const SessionCommand::id_type kCommandSetTabWindow = 0; 49 static const SessionCommand::id_type kCommandSetTabWindow = 0;
49 // OBSOLETE Superseded by kCommandSetWindowBounds3. 50 // OBSOLETE Superseded by kCommandSetWindowBounds3.
50 // static const SessionCommand::id_type kCommandSetWindowBounds = 1; 51 // static const SessionCommand::id_type kCommandSetWindowBounds = 1;
51 static const SessionCommand::id_type kCommandSetTabIndexInWindow = 2; 52 static const SessionCommand::id_type kCommandSetTabIndexInWindow = 2;
52 static const SessionCommand::id_type kCommandTabClosed = 3; 53 static const SessionCommand::id_type kCommandTabClosed = 3;
53 static const SessionCommand::id_type kCommandWindowClosed = 4; 54 static const SessionCommand::id_type kCommandWindowClosed = 4;
54 static const SessionCommand::id_type 55 static const SessionCommand::id_type
55 kCommandTabNavigationPathPrunedFromBack = 5; 56 kCommandTabNavigationPathPrunedFromBack = 5;
(...skipping 299 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 new SessionCommand(kCommandTabNavigationPathPrunedFromFront, 356 new SessionCommand(kCommandTabNavigationPathPrunedFromFront,
356 sizeof(payload)); 357 sizeof(payload));
357 memcpy(command->contents(), &payload, sizeof(payload)); 358 memcpy(command->contents(), &payload, sizeof(payload));
358 ScheduleCommand(command); 359 ScheduleCommand(command);
359 } 360 }
360 361
361 void SessionService::UpdateTabNavigation( 362 void SessionService::UpdateTabNavigation(
362 const SessionID& window_id, 363 const SessionID& window_id,
363 const SessionID& tab_id, 364 const SessionID& tab_id,
364 int index, 365 int index,
365 const content::NavigationEntry& entry) { 366 const NavigationEntry& entry) {
366 if (!ShouldTrackEntry(entry.GetVirtualURL()) || 367 if (!ShouldTrackEntry(entry.GetVirtualURL()) ||
367 !ShouldTrackChangesToWindow(window_id)) { 368 !ShouldTrackChangesToWindow(window_id)) {
368 return; 369 return;
369 } 370 }
370 371
371 if (tab_to_available_range_.find(tab_id.id()) != 372 if (tab_to_available_range_.find(tab_id.id()) !=
372 tab_to_available_range_.end()) { 373 tab_to_available_range_.end()) {
373 std::pair<int, int>& range = tab_to_available_range_[tab_id.id()]; 374 std::pair<int, int>& range = tab_to_available_range_[tab_id.id()];
374 range.first = std::min(index, range.first); 375 range.first = std::min(index, range.first);
375 range.second = std::max(index, range.second); 376 range.second = std::max(index, range.second);
(...skipping 756 matching lines...) Expand 10 before | Expand all | Expand 10 after
1132 } 1133 }
1133 TabContentsWrapper* wrapper = 1134 TabContentsWrapper* wrapper =
1134 TabContentsWrapper::GetCurrentWrapperForContents(tab->tab_contents()); 1135 TabContentsWrapper::GetCurrentWrapperForContents(tab->tab_contents());
1135 if (wrapper->extension_tab_helper()->extension_app()) { 1136 if (wrapper->extension_tab_helper()->extension_app()) {
1136 commands->push_back( 1137 commands->push_back(
1137 CreateSetTabExtensionAppIDCommand( 1138 CreateSetTabExtensionAppIDCommand(
1138 kCommandSetExtensionAppID, session_id.id(), 1139 kCommandSetExtensionAppID, session_id.id(),
1139 wrapper->extension_tab_helper()->extension_app()->id())); 1140 wrapper->extension_tab_helper()->extension_app()->id()));
1140 } 1141 }
1141 for (int i = min_index; i < max_index; ++i) { 1142 for (int i = min_index; i < max_index; ++i) {
1142 const content::NavigationEntry* entry = (i == pending_index) ? 1143 const NavigationEntry* entry = (i == pending_index) ?
1143 tab->tab_contents()->GetController().GetPendingEntry() : 1144 tab->tab_contents()->GetController().GetPendingEntry() :
1144 tab->tab_contents()->GetController().GetEntryAtIndex(i); 1145 tab->tab_contents()->GetController().GetEntryAtIndex(i);
1145 DCHECK(entry); 1146 DCHECK(entry);
1146 if (ShouldTrackEntry(entry->GetVirtualURL())) { 1147 if (ShouldTrackEntry(entry->GetVirtualURL())) {
1147 commands->push_back( 1148 commands->push_back(
1148 CreateUpdateTabNavigationCommand( 1149 CreateUpdateTabNavigationCommand(
1149 kCommandUpdateTabNavigation, session_id.id(), i, *entry)); 1150 kCommandUpdateTabNavigation, session_id.id(), i, *entry));
1150 } 1151 }
1151 } 1152 }
1152 commands->push_back( 1153 commands->push_back(
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after
1511 50); 1512 50);
1512 if (use_long_period) { 1513 if (use_long_period) {
1513 std::string long_name_("SessionRestore.SaveLongPeriod"); 1514 std::string long_name_("SessionRestore.SaveLongPeriod");
1514 UMA_HISTOGRAM_CUSTOM_TIMES(long_name_, 1515 UMA_HISTOGRAM_CUSTOM_TIMES(long_name_,
1515 delta, 1516 delta,
1516 save_delay_in_mins_, 1517 save_delay_in_mins_,
1517 save_delay_in_hrs_, 1518 save_delay_in_hrs_,
1518 50); 1519 50);
1519 } 1520 }
1520 } 1521 }
OLDNEW
« no previous file with comments | « chrome/browser/sessions/base_session_service.cc ('k') | chrome/browser/sessions/session_service_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698