Replace wstring with string16 in history. The only time wstring is used now in history is for bookmark-related stuff (the bookmarks system is still wstring-based).

The substantial change here is in RTL to make a string16 variant of the functions and in changing the WordIterator to use string16 (this cleaned up some weird utf-32 code).

TEST=none
BUG=none
Review URL: http://codereview.chromium.org/2808017

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@50597 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/browser/importer/firefox3_importer.cc b/chrome/browser/importer/firefox3_importer.cc
index 775e8ca..2b95cc3 100644
--- a/chrome/browser/importer/firefox3_importer.cc
+++ b/chrome/browser/importer/firefox3_importer.cc
@@ -109,7 +109,7 @@
       continue;
 
     history::URLRow row(url);
-    row.set_title(s.column_wstring(1));
+    row.set_title(UTF8ToUTF16(s.column_string(1)));
     row.set_visit_count(s.column_int(2));
     row.set_hidden(s.column_int(3) == 1);
     row.set_typed_count(s.column_int(4));
diff --git a/chrome/browser/importer/importer_messages.h b/chrome/browser/importer/importer_messages.h
index 0ed8002..3feca84 100644
--- a/chrome/browser/importer/importer_messages.h
+++ b/chrome/browser/importer/importer_messages.h
@@ -81,7 +81,7 @@
   static bool Read(const Message* m, void** iter, param_type* p) {
     history::URLID id;
     GURL url;
-    std::wstring title;
+    string16 title;
     int visit_count, typed_count;
     base::Time last_visit;
     bool hidden;
diff --git a/chrome/browser/importer/mork_reader.cc b/chrome/browser/importer/mork_reader.cc
index ee7bbc5e..49dadb0 100644
--- a/chrome/browser/importer/mork_reader.cc
+++ b/chrome/browser/importer/mork_reader.cc
@@ -515,14 +515,13 @@
   if (CanImportURL(url)) {
     history::URLRow row(url);
 
-    // title is really a UTF-16 string at this point
-    std::wstring title;
+    string16 title;
     if (data.swap_bytes) {
-      base::CodepageToWide(values[kNameColumn], base::kCodepageUTF16BE,
-                           base::OnStringConversionError::SKIP, &title);
+      base::CodepageToUTF16(values[kNameColumn], base::kCodepageUTF16BE,
+                            base::OnStringConversionError::SKIP, &title);
     } else {
-      base::CodepageToWide(values[kNameColumn], base::kCodepageUTF16LE,
-                           base::OnStringConversionError::SKIP, &title);
+      base::CodepageToUTF16(values[kNameColumn], base::kCodepageUTF16LE,
+                            base::OnStringConversionError::SKIP, &title);
     }
     row.set_title(title);
 
diff --git a/chrome/browser/importer/safari_importer.mm b/chrome/browser/importer/safari_importer.mm
index 2cd776c..9a30073 100644
--- a/chrome/browser/importer/safari_importer.mm
+++ b/chrome/browser/importer/safari_importer.mm
@@ -352,7 +352,7 @@
 
   for (NSDictionary* history_item in safari_history_items) {
     using base::SysNSStringToUTF8;
-    using base::SysNSStringToWide;
+    using base::SysNSStringToUTF16;
     NSString* url_ns = [history_item objectForKey:@""];
     if (!url_ns)
       continue;
@@ -370,7 +370,7 @@
     if (!title_ns)
       title_ns = url_ns;
 
-    row.set_title(SysNSStringToWide(title_ns));
+    row.set_title(SysNSStringToUTF16(title_ns));
     int visit_count = [[history_item objectForKey:@"visitCount"]
                           intValue];
     row.set_visit_count(visit_count);
diff --git a/chrome/browser/importer/safari_importer_unittest.mm b/chrome/browser/importer/safari_importer_unittest.mm
index bb8b66d..081c26e3 100644
--- a/chrome/browser/importer/safari_importer_unittest.mm
+++ b/chrome/browser/importer/safari_importer_unittest.mm
@@ -9,6 +9,7 @@
 #include "base/file_util.h"
 #include "base/path_service.h"
 #include "base/sys_string_conversions.h"
+#include "base/utf_string_conversions.h"
 #include "chrome/browser/history/history_types.h"
 #include "chrome/common/chrome_paths.h"
 #include "chrome/test/file_test_utils.h"
@@ -58,7 +59,7 @@
 
   history::URLRow& it1 = history_items[0];
   EXPECT_EQ(it1.url(), GURL("http://www.firsthistoryitem.com/"));
-  EXPECT_EQ(it1.title(), L"First History Item Title");
+  EXPECT_EQ(it1.title(), UTF8ToUTF16("First History Item Title"));
   EXPECT_EQ(it1.visit_count(), 1);
   EXPECT_EQ(it1.hidden(), 0);
   EXPECT_EQ(it1.typed_count(), 0);
@@ -69,7 +70,7 @@
   std::string second_item_title("http://www.secondhistoryitem.com/");
   EXPECT_EQ(it2.url(), GURL(second_item_title));
   // The second item lacks a title so we expect the URL to be substituted.
-  EXPECT_EQ(base::SysWideToUTF8(it2.title()), second_item_title.c_str());
+  EXPECT_EQ(UTF16ToUTF8(it2.title()), second_item_title.c_str());
   EXPECT_EQ(it2.visit_count(), 55);
   EXPECT_EQ(it2.hidden(), 0);
   EXPECT_EQ(it2.typed_count(), 0);