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

Side by Side Diff: chrome/browser/first_run_win.cc

Issue 1077007: Add the option of importing bookmarks from file to first run.... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 10 years, 9 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
« no previous file with comments | « chrome/browser/first_run.h ('k') | chrome/common/chrome_switches.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2009 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/first_run.h" 5 #include "chrome/browser/first_run.h"
6 6
7 #include <windows.h> 7 #include <windows.h>
8 #include <shellapi.h> 8 #include <shellapi.h>
9 #include <shlobj.h> 9 #include <shlobj.h>
10 10
(...skipping 653 matching lines...) Expand 10 before | Expand all | Expand 10 after
664 ImportProcessRunner import_runner(import_process); 664 ImportProcessRunner import_runner(import_process);
665 665
666 // Import process finished. Reload the prefs, because importer may set 666 // Import process finished. Reload the prefs, because importer may set
667 // the pref value. 667 // the pref value.
668 if (profile) 668 if (profile)
669 profile->GetPrefs()->ReloadPersistentPrefs(); 669 profile->GetPrefs()->ReloadPersistentPrefs();
670 670
671 return (import_runner.exit_code() == ResultCodes::NORMAL_EXIT); 671 return (import_runner.exit_code() == ResultCodes::NORMAL_EXIT);
672 } 672 }
673 673
674 int FirstRun::ImportNow(Profile* profile, const CommandLine& cmdline) { 674 int FirstRun::ImportFromFile(Profile* profile, const CommandLine& cmdline) {
675 std::wstring file_path = cmdline.GetSwitchValue(switches::kImportFromFile);
676 if (file_path.empty()) {
677 NOTREACHED();
678 return false;
679 }
680
cpu_(ooo_6.6-7.5) 2010/03/22 17:21:27 remove empty line so it looks same as lines 717-71
huanr 2010/03/22 17:56:11 Done.
681 scoped_refptr<ImporterHost> importer_host = new ImporterHost();
682 FirstRunImportObserver observer;
683
684 importer_host->set_headless();
685
686 ProfileInfo profile_info;
687 profile_info.browser_type = BOOKMARKS_HTML;
688 profile_info.source_path = file_path;
689
690 StartImportingWithUI(
691 NULL,
692 FAVORITES,
693 importer_host,
694 profile_info,
695 profile,
696 &observer,
697 true);
698
699 observer.RunLoop();
700 return observer.import_result();
701 }
702
703 int FirstRun::ImportFromBrowser(Profile* profile,
704 const CommandLine& cmdline) {
675 std::wstring import_info = cmdline.GetSwitchValue(switches::kImport); 705 std::wstring import_info = cmdline.GetSwitchValue(switches::kImport);
676 if (import_info.empty()) { 706 if (import_info.empty()) {
677 NOTREACHED(); 707 NOTREACHED();
678 return false; 708 return false;
679 } 709 }
680 int browser_type = 0; 710 int browser_type = 0;
681 int items_to_import = 0; 711 int items_to_import = 0;
682 HWND parent_window = NULL; 712 HWND parent_window = NULL;
683 if (!DecodeImportParams(import_info, &browser_type, &items_to_import, 713 if (!DecodeImportParams(import_info, &browser_type, &items_to_import,
684 &parent_window)) { 714 &parent_window)) {
(...skipping 14 matching lines...) Expand all
699 items_to_import, 729 items_to_import,
700 importer_host, 730 importer_host,
701 importer_host->GetSourceProfileInfoForBrowserType(browser_type), 731 importer_host->GetSourceProfileInfoForBrowserType(browser_type),
702 profile, 732 profile,
703 &observer, 733 &observer,
704 true); 734 true);
705 observer.RunLoop(); 735 observer.RunLoop();
706 return observer.import_result(); 736 return observer.import_result();
707 } 737 }
708 738
739 int FirstRun::ImportNow(Profile* profile, const CommandLine& cmdline) {
740 int return_code = true;
cpu_(ooo_6.6-7.5) 2010/03/22 17:21:27 return_code = false ?
huanr 2010/03/22 17:56:11 I meant returning true if no import is needed.
741 if (cmdline.HasSwitch(switches::kImportFromFile)) {
742 // Silently import preset bookmarks from file.
743 // This is an OEM scenario.
744 return_code = ImportFromFile(profile, cmdline);
745 }
746 if (cmdline.HasSwitch(switches::kImport)) {
747 return_code = ImportFromBrowser(profile, cmdline);
748 }
749 return return_code;
750 }
751
709 ////////////////////////////////////////////////////////////////////////// 752 //////////////////////////////////////////////////////////////////////////
710 753
711 namespace { 754 namespace {
712 755
713 const wchar_t kHelpCenterUrl[] = 756 const wchar_t kHelpCenterUrl[] =
714 L"http://www.google.com/support/chrome/bin/answer.py?answer=150752"; 757 L"http://www.google.com/support/chrome/bin/answer.py?answer=150752";
715 758
716 // This class displays a modal dialog using the views system. The dialog asks 759 // This class displays a modal dialog using the views system. The dialog asks
717 // the user to give chrome another try. This class only handles the UI so the 760 // the user to give chrome another try. This class only handles the UI so the
718 // resulting actions are up to the caller. One version looks like this: 761 // resulting actions are up to the caller. One version looks like this:
(...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after
975 1018
976 Upgrade::TryResult Upgrade::ShowTryChromeDialog(size_t version) { 1019 Upgrade::TryResult Upgrade::ShowTryChromeDialog(size_t version) {
977 if (version > 10000) { 1020 if (version > 10000) {
978 // This is a test value. We want to make sure we exercise 1021 // This is a test value. We want to make sure we exercise
979 // returning this early. See EarlyReturnTest test harness. 1022 // returning this early. See EarlyReturnTest test harness.
980 return Upgrade::TD_NOT_NOW; 1023 return Upgrade::TD_NOT_NOW;
981 } 1024 }
982 TryChromeDialog td; 1025 TryChromeDialog td;
983 return td.ShowModal(); 1026 return td.ShowModal();
984 } 1027 }
OLDNEW
« no previous file with comments | « chrome/browser/first_run.h ('k') | chrome/common/chrome_switches.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698