first-run: Refactor Upgrade class.

- Split Upgrade class implementation per platform files outside of first_run implementations.
- Move TryChromeDialog class into its own header file.
- Rename TryChromeDialog to TryChromeDialogView.

BUG=None
TEST=None

[email protected]

Review URL: http://codereview.chromium.org/6824029

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@81313 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi
index 85215cd..6a3a582 100644
--- a/chrome/chrome_browser.gypi
+++ b/chrome/chrome_browser.gypi
@@ -1060,6 +1060,12 @@
         'browser/first_run/first_run_gtk.cc',
         'browser/first_run/first_run_mac.mm',
         'browser/first_run/first_run_win.cc',
+        'browser/first_run/upgrade.cc',
+        'browser/first_run/upgrade.h',
+        'browser/first_run/upgrade_gtk.cc',
+        'browser/first_run/upgrade_win.cc',
+        'browser/first_run/try_chrome_dialog_view.cc',
+        'browser/first_run/try_chrome_dialog_view.h',
         'browser/fullscreen.h',
         'browser/fullscreen_linux.cc',
         'browser/fullscreen_mac.mm',
@@ -3374,7 +3380,6 @@
             ['exclude', '^browser/ui/webui/chromeos'],
             ['exclude', '^browser/ui/webui/options/chromeos'],
             ['exclude', 'browser/extensions/extension_tts_api_chromeos.cc'],
-            ['exclude', 'browser/ui/login/login_prompt_ui.cc'],
             ['exclude', 'browser/oom_priority_manager.cc'],
             ['exclude', 'browser/oom_priority_manager.h'],
             ['exclude', 'browser/policy/device_policy_cache\\.(h|cc)'],
@@ -3383,6 +3388,7 @@
             ['exclude', 'browser/policy/proto/chrome_device_policy\\.pb\\.(h|cc)'],
             ['exclude', 'browser/renderer_host/offline_resource_handler.cc'],
             ['exclude', 'browser/renderer_host/offline_resource_handler.h'],
+            ['exclude', 'browser/ui/login/login_prompt_ui.cc'],
             ['exclude', 'browser/ui/webui/chrome_about_ui.cc'],
             ['exclude', 'browser/ui/webui/collected_cookies_ui_delegate.cc'],
             ['exclude', 'browser/ui/webui/collected_cookies_ui_delegate.h'],
@@ -3396,6 +3402,8 @@
         ['chromeos==1', {
           'sources!': [
             'browser/background_mode_manager_linux.cc',
+            'browser/first_run/upgrade.cc',
+            'browser/first_run/upgrade.h',
             'browser/password_manager/native_backend_gnome_x.cc',
             'browser/password_manager/native_backend_gnome_x.h',
             'browser/password_manager/native_backend_kwallet_x.cc',
@@ -3463,6 +3471,8 @@
           ],
           'sources': [
             'browser/crash_handler_host_linux.h',
+            'browser/first_run/upgrade.cc',
+            'browser/first_run/upgrade.h',
           ],
           'conditions': [
             ['use_gnome_keyring==1', {
@@ -3526,6 +3536,8 @@
             'browser/automation/automation_provider_list_generic.cc',
             'browser/bookmarks/bookmark_context_menu.cc',
             'browser/bookmarks/bookmark_drop_info.cc',
+            'browser/first_run/upgrade.cc',
+            'browser/first_run/upgrade.h',
             'browser/importer/nss_decryptor_system_nss.cc',
             'browser/importer/nss_decryptor_system_nss.h',
             'browser/jankometer.cc',
@@ -3686,6 +3698,8 @@
             }
           },
           'sources': [
+            'browser/first_run/upgrade.cc',
+            'browser/first_run/upgrade.h',
             # Using built-in rule in vstudio for midl.
             'browser/history/history_indexer.idl',
             'browser/ui/webui/conflicts_ui.cc',
@@ -3722,6 +3736,10 @@
 
             # Exclude all of views.
             ['exclude', '^browser/ui/views/'],
+
+            # Exclude try chrome dialog.
+            ['exclude', '^browser/first_run/try_chrome_dialog_view.cc'],
+            ['exclude', '^browser/first_run/try_chrome_dialog_view.h'],
           ],
           'conditions': [
             ['OS=="linux" and toolkit_views==1',{