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

Side by Side Diff: chrome/browser/ui/browser_init.cc

Issue 9696049: Add enable_automation build switch. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/ui/browser_init.h" 5 #include "chrome/browser/ui/browser_init.h"
6 6
7 #include <algorithm> // For max(). 7 #include <algorithm> // For max().
8 #include <set> 8 #include <set>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 1702 matching lines...) Expand 10 before | Expand all | Expand 10 after
1713 if (process_startup) { 1713 if (process_startup) {
1714 if (command_line.HasSwitch(switches::kDisablePromptOnRepost)) 1714 if (command_line.HasSwitch(switches::kDisablePromptOnRepost))
1715 content::NavigationController::DisablePromptOnRepost(); 1715 content::NavigationController::DisablePromptOnRepost();
1716 1716
1717 #if defined(OS_CHROMEOS) 1717 #if defined(OS_CHROMEOS)
1718 // crosbug.com/26446. 1718 // crosbug.com/26446.
1719 LOG(ERROR) << "RegisterComponentsForUpdate"; 1719 LOG(ERROR) << "RegisterComponentsForUpdate";
1720 #endif 1720 #endif
1721 RegisterComponentsForUpdate(command_line); 1721 RegisterComponentsForUpdate(command_line);
1722 1722
1723 #if defined(ENABLE_AUTOMATION)
1723 // Look for the testing channel ID ONLY during process startup 1724 // Look for the testing channel ID ONLY during process startup
1724 if (command_line.HasSwitch(switches::kTestingChannelID)) { 1725 if (command_line.HasSwitch(switches::kTestingChannelID)) {
1725 std::string testing_channel_id = command_line.GetSwitchValueASCII( 1726 std::string testing_channel_id = command_line.GetSwitchValueASCII(
1726 switches::kTestingChannelID); 1727 switches::kTestingChannelID);
1727 // TODO(sanjeevr) Check if we need to make this a singleton for 1728 // TODO(sanjeevr) Check if we need to make this a singleton for
1728 // compatibility with the old testing code 1729 // compatibility with the old testing code
1729 // If there are any extra parameters, we expect each one to generate a 1730 // If there are any extra parameters, we expect each one to generate a
1730 // new tab; if there are none then we get one homepage tab. 1731 // new tab; if there are none then we get one homepage tab.
1731 int expected_tab_count = 1; 1732 int expected_tab_count = 1;
1732 if (command_line.HasSwitch(switches::kNoStartupWindow)) { 1733 if (command_line.HasSwitch(switches::kNoStartupWindow)) {
(...skipping 17 matching lines...) Expand all
1750 #if defined(OS_CHROMEOS) 1751 #if defined(OS_CHROMEOS)
1751 // crosbug.com/26446. 1752 // crosbug.com/26446.
1752 LOG(ERROR) << "CreatingAutomationProvider"; 1753 LOG(ERROR) << "CreatingAutomationProvider";
1753 #endif 1754 #endif
1754 if (!CreateAutomationProvider<TestingAutomationProvider>( 1755 if (!CreateAutomationProvider<TestingAutomationProvider>(
1755 testing_channel_id, 1756 testing_channel_id,
1756 last_used_profile, 1757 last_used_profile,
1757 static_cast<size_t>(expected_tab_count))) 1758 static_cast<size_t>(expected_tab_count)))
1758 return false; 1759 return false;
1759 } 1760 }
1761 #endif // enabled(ENABLE_AUTOMATION)
1760 } 1762 }
1761 1763
1762 bool silent_launch = false; 1764 bool silent_launch = false;
jam 2012/03/14 17:48:13 nit: move this to line 1723 and then you can have
Xianzhu 2012/03/14 18:02:31 Done (with if (process_startup) also merged into t
1763 1765
1766 #if defined(ENABLE_AUTOMATION)
1764 if (command_line.HasSwitch(switches::kAutomationClientChannelID)) { 1767 if (command_line.HasSwitch(switches::kAutomationClientChannelID)) {
1765 std::string automation_channel_id = command_line.GetSwitchValueASCII( 1768 std::string automation_channel_id = command_line.GetSwitchValueASCII(
1766 switches::kAutomationClientChannelID); 1769 switches::kAutomationClientChannelID);
1767 // If there are any extra parameters, we expect each one to generate a 1770 // If there are any extra parameters, we expect each one to generate a
1768 // new tab; if there are none then we have no tabs 1771 // new tab; if there are none then we have no tabs
1769 std::vector<GURL> urls_to_open = GetURLsFromCommandLine( 1772 std::vector<GURL> urls_to_open = GetURLsFromCommandLine(
1770 command_line, cur_dir, last_used_profile); 1773 command_line, cur_dir, last_used_profile);
1771 size_t expected_tabs = 1774 size_t expected_tabs =
1772 std::max(static_cast<int>(urls_to_open.size()), 0); 1775 std::max(static_cast<int>(urls_to_open.size()), 0);
1773 if (expected_tabs == 0) 1776 if (expected_tabs == 0)
1774 silent_launch = true; 1777 silent_launch = true;
1775 1778
1776 if (command_line.HasSwitch(switches::kChromeFrame)) { 1779 if (command_line.HasSwitch(switches::kChromeFrame)) {
1777 #if !defined(USE_AURA) 1780 #if !defined(USE_AURA)
1778 if (!CreateAutomationProvider<ChromeFrameAutomationProvider>( 1781 if (!CreateAutomationProvider<ChromeFrameAutomationProvider>(
1779 automation_channel_id, last_used_profile, expected_tabs)) 1782 automation_channel_id, last_used_profile, expected_tabs))
1780 return false; 1783 return false;
1781 #endif 1784 #endif
1782 } else { 1785 } else {
1783 if (!CreateAutomationProvider<AutomationProvider>( 1786 if (!CreateAutomationProvider<AutomationProvider>(
1784 automation_channel_id, last_used_profile, expected_tabs)) 1787 automation_channel_id, last_used_profile, expected_tabs))
1785 return false; 1788 return false;
1786 } 1789 }
1787 } 1790 }
1791 #endif // defined(ENABLE_AUTOMATION)
1788 1792
1789 // If we have been invoked to display a desktop notification on behalf of 1793 // If we have been invoked to display a desktop notification on behalf of
1790 // the service process, we do not want to open any browser windows. 1794 // the service process, we do not want to open any browser windows.
1791 if (command_line.HasSwitch(switches::kNotifyCloudPrintTokenExpired)) { 1795 if (command_line.HasSwitch(switches::kNotifyCloudPrintTokenExpired)) {
1792 silent_launch = true; 1796 silent_launch = true;
1793 CloudPrintProxyServiceFactory::GetForProfile(last_used_profile)-> 1797 CloudPrintProxyServiceFactory::GetForProfile(last_used_profile)->
1794 ShowTokenExpiredNotification(); 1798 ShowTokenExpiredNotification();
1795 } 1799 }
1796 1800
1797 // If we are just displaying a print dialog we shouldn't open browser 1801 // If we are just displaying a print dialog we shouldn't open browser
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
1898 } 1902 }
1899 } 1903 }
1900 } 1904 }
1901 return true; 1905 return true;
1902 } 1906 }
1903 1907
1904 template <class AutomationProviderClass> 1908 template <class AutomationProviderClass>
1905 bool BrowserInit::CreateAutomationProvider(const std::string& channel_id, 1909 bool BrowserInit::CreateAutomationProvider(const std::string& channel_id,
1906 Profile* profile, 1910 Profile* profile,
1907 size_t expected_tabs) { 1911 size_t expected_tabs) {
1912 #if defined(ENABLE_AUTOMATION)
1908 scoped_refptr<AutomationProviderClass> automation = 1913 scoped_refptr<AutomationProviderClass> automation =
1909 new AutomationProviderClass(profile); 1914 new AutomationProviderClass(profile);
1910 #if defined(OS_CHROMEOS) 1915 #if defined(OS_CHROMEOS)
1911 // crosbug.com/26446. 1916 // crosbug.com/26446.
1912 LOG(ERROR) << "CreateAutomationProvider: channel=" << channel_id; 1917 LOG(ERROR) << "CreateAutomationProvider: channel=" << channel_id;
1913 #endif 1918 #endif
1914 if (!automation->InitializeChannel(channel_id)) 1919 if (!automation->InitializeChannel(channel_id))
1915 return false; 1920 return false;
1916 automation->SetExpectedTabCount(expected_tabs); 1921 automation->SetExpectedTabCount(expected_tabs);
1917 1922
1918 AutomationProviderList* list = g_browser_process->GetAutomationProviderList(); 1923 AutomationProviderList* list = g_browser_process->GetAutomationProviderList();
1919 DCHECK(list); 1924 DCHECK(list);
1920 list->AddProvider(automation); 1925 list->AddProvider(automation);
1926 #endif // defined(ENABLE_AUTOMATION)
1921 1927
1922 return true; 1928 return true;
1923 } 1929 }
1924 1930
1925 // static 1931 // static
1926 void BrowserInit::ProcessCommandLineOnProfileCreated( 1932 void BrowserInit::ProcessCommandLineOnProfileCreated(
1927 const CommandLine& cmd_line, 1933 const CommandLine& cmd_line,
1928 const FilePath& cur_dir, 1934 const FilePath& cur_dir,
1929 Profile* profile, 1935 Profile* profile,
1930 Profile::CreateStatus status) { 1936 Profile::CreateStatus status) {
(...skipping 17 matching lines...) Expand all
1948 1954
1949 Profile* profile = ProfileManager::GetLastUsedProfile(); 1955 Profile* profile = ProfileManager::GetLastUsedProfile();
1950 if (!profile) { 1956 if (!profile) {
1951 // We should only be able to get here if the profile already exists and 1957 // We should only be able to get here if the profile already exists and
1952 // has been created. 1958 // has been created.
1953 NOTREACHED(); 1959 NOTREACHED();
1954 return; 1960 return;
1955 } 1961 }
1956 ProcessCmdLineImpl(cmd_line, cur_dir, false, profile, Profiles(), NULL, NULL); 1962 ProcessCmdLineImpl(cmd_line, cur_dir, false, profile, Profiles(), NULL, NULL);
1957 } 1963 }
OLDNEW
« no previous file with comments | « chrome/browser/renderer_host/chrome_render_message_filter.cc ('k') | chrome/browser/ui/tab_contents/tab_contents_wrapper.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698