Index: chrome/browser/sessions/session_types.cc |
diff --git a/chrome/browser/sessions/session_types.cc b/chrome/browser/sessions/session_types.cc |
index 59afc341fdb9604100636d2befdc8f85c738cddf..71b2e15af358c46dd53491db3abef5a92d1ac234 100644 |
--- a/chrome/browser/sessions/session_types.cc |
+++ b/chrome/browser/sessions/session_types.cc |
@@ -41,6 +41,7 @@ TabNavigation TabNavigation::FromNavigationEntry( |
navigation.referrer_ = entry.GetReferrer(); |
navigation.virtual_url_ = entry.GetVirtualURL(); |
navigation.title_ = entry.GetTitle(); |
+ navigation.search_terms_ = entry.GetSearchTerms(); |
navigation.content_state_ = entry.GetContentState(); |
navigation.transition_type_ = entry.GetTransitionType(); |
navigation.has_post_data_ = entry.GetHasPostData(); |
@@ -62,6 +63,7 @@ TabNavigation TabNavigation::FromSyncData( |
WebKit::WebReferrerPolicyDefault); |
navigation.virtual_url_ = GURL(sync_data.virtual_url()); |
navigation.title_ = UTF8ToUTF16(sync_data.title()); |
+ navigation.search_terms_ = UTF8ToUTF16(sync_data.search_terms()); |
navigation.content_state_ = sync_data.state(); |
uint32 transition = 0; |
@@ -191,6 +193,7 @@ enum TypeMask { |
// index_ |
// virtual_url_ |
// title_ |
+// search_terms_ |
// content_state_ |
// transition_type_ |
// |
@@ -220,6 +223,8 @@ void TabNavigation::WriteToPickle(Pickle* pickle) const { |
WriteString16ToPickle(pickle, &bytes_written, max_state_size, title_); |
+ WriteString16ToPickle(pickle, &bytes_written, max_state_size, search_terms_); |
+ |
std::string content_state = content_state_; |
if (has_post_data_) { |
content_state = |
@@ -254,6 +259,7 @@ bool TabNavigation::ReadFromPickle(PickleIterator* iterator) { |
if (!iterator->ReadInt(&index_) || |
!iterator->ReadString(&virtual_url_spec) || |
!iterator->ReadString16(&title_) || |
+ !iterator->ReadString16(&search_terms_) || |
akalin
2012/12/05 19:40:27
this isn't backwards compatible. it needs to go l
Mathieu
2012/12/05 20:42:16
Done. Let me know if this is the way to do it.
|
!iterator->ReadString(&content_state_) || |
!iterator->ReadInt(&transition_type_int)) |
return false; |
@@ -319,6 +325,7 @@ scoped_ptr<NavigationEntry> TabNavigation::ToNavigationEntry( |
browser_context)); |
entry->SetTitle(title_); |
+ entry->SetSearchTerms(search_terms_); |
entry->SetContentState(content_state_); |
entry->SetPageID(page_id); |
entry->SetHasPostData(has_post_data_); |
@@ -338,6 +345,7 @@ sync_pb::TabNavigation TabNavigation::ToSyncData() const { |
// FIXME(zea): Support referrer policy? |
sync_data.set_referrer(referrer_.url.spec()); |
sync_data.set_title(UTF16ToUTF8(title_)); |
+ sync_data.set_search_terms(UTF16ToUTF8(search_terms_)) |
// Page transition core. |
COMPILE_ASSERT(content::PAGE_TRANSITION_LAST_CORE == |