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

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

Issue 11412067: [rlz,cros] RLZ glue for ChromeOS. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years 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/chrome_browser_main.h" 5 #include "chrome/browser/chrome_browser_main.h"
6 6
7 #if defined(TOOLKIT_GTK) 7 #if defined(TOOLKIT_GTK)
8 #include <gtk/gtk.h> 8 #include <gtk/gtk.h>
9 #endif 9 #endif
10 10
11 #include <algorithm>
12 #include <string> 11 #include <string>
13 #include <vector> 12 #include <vector>
14 13
15 #include "base/at_exit.h" 14 #include "base/at_exit.h"
16 #include "base/bind.h" 15 #include "base/bind.h"
17 #include "base/command_line.h" 16 #include "base/command_line.h"
18 #include "base/debug/trace_event.h" 17 #include "base/debug/trace_event.h"
19 #include "base/file_path.h" 18 #include "base/file_path.h"
20 #include "base/file_util.h" 19 #include "base/file_util.h"
21 #include "base/metrics/field_trial.h" 20 #include "base/metrics/field_trial.h"
(...skipping 390 matching lines...) Expand 10 before | Expand all | Expand 10 after
412 StartupBrowserCreator::ProcessCommandLineAlreadyRunning( 411 StartupBrowserCreator::ProcessCommandLineAlreadyRunning(
413 command_line, current_directory); 412 command_line, current_directory);
414 return true; 413 return true;
415 } 414 }
416 415
417 bool HasImportSwitch(const CommandLine& command_line) { 416 bool HasImportSwitch(const CommandLine& command_line) {
418 return (command_line.HasSwitch(switches::kImport) || 417 return (command_line.HasSwitch(switches::kImport) ||
419 command_line.HasSwitch(switches::kImportFromFile)); 418 command_line.HasSwitch(switches::kImportFromFile));
420 } 419 }
421 420
422 #if defined(ENABLE_RLZ)
423 bool IsGoogleUrl(const GURL& url) {
424 return google_util::IsGoogleHomePageUrl(url.possibly_invalid_spec());
425 }
426 #endif
427
428 } // namespace 421 } // namespace
429 422
430 namespace chrome_browser { 423 namespace chrome_browser {
431 // This error message is not localized because we failed to load the 424 // This error message is not localized because we failed to load the
432 // localization data files. 425 // localization data files.
433 const char kMissingLocaleDataTitle[] = "Missing File Error"; 426 const char kMissingLocaleDataTitle[] = "Missing File Error";
434 const char kMissingLocaleDataMessage[] = 427 const char kMissingLocaleDataMessage[] =
435 "Unable to find locale data files. Please reinstall."; 428 "Unable to find locale data files. Please reinstall.";
436 } // namespace chrome_browser 429 } // namespace chrome_browser
437 430
(...skipping 760 matching lines...) Expand 10 before | Expand all | Expand 10 after
1198 // Verify that the profile is not on a network share and if so prepare to show 1191 // Verify that the profile is not on a network share and if so prepare to show
1199 // notification to the user. 1192 // notification to the user.
1200 if (NetworkProfileBubble::ShouldCheckNetworkProfile(profile_)) { 1193 if (NetworkProfileBubble::ShouldCheckNetworkProfile(profile_)) {
1201 content::BrowserThread::PostTask(content::BrowserThread::FILE, FROM_HERE, 1194 content::BrowserThread::PostTask(content::BrowserThread::FILE, FROM_HERE,
1202 base::Bind(&NetworkProfileBubble::CheckNetworkProfile, 1195 base::Bind(&NetworkProfileBubble::CheckNetworkProfile,
1203 profile_->GetPath())); 1196 profile_->GetPath()));
1204 } 1197 }
1205 #endif // OS_WIN 1198 #endif // OS_WIN
1206 1199
1207 #if defined(ENABLE_RLZ) && !defined(OS_CHROMEOS) 1200 #if defined(ENABLE_RLZ) && !defined(OS_CHROMEOS)
1208 // TODO(ivankr): do this on user login on ChromeOS.
1209 // Init the RLZ library. This just binds the dll and schedules a task on the 1201 // Init the RLZ library. This just binds the dll and schedules a task on the
1210 // file thread to be run sometime later. If this is the first run we record 1202 // file thread to be run sometime later. If this is the first run we record
1211 // the installation event. 1203 // the installation event.
1212 bool is_google_default_search = false;
1213 TemplateURLService* template_url_service =
1214 TemplateURLServiceFactory::GetForProfile(profile_);
1215 if (template_url_service) {
1216 const TemplateURL* url_template =
1217 template_url_service->GetDefaultSearchProvider();
1218 is_google_default_search =
1219 url_template && url_template->url_ref().HasGoogleBaseURLs();
1220 }
1221
1222 PrefService* pref_service = profile_->GetPrefs(); 1204 PrefService* pref_service = profile_->GetPrefs();
1223 bool is_google_homepage = google_util::IsGoogleHomePageUrl(
1224 pref_service->GetString(prefs::kHomePage));
1225
1226 bool is_google_in_startpages = false;
1227 SessionStartupPref session_startup_prefs =
1228 StartupBrowserCreator::GetSessionStartupPref(parsed_command_line(),
1229 profile_);
1230 if (session_startup_prefs.type == SessionStartupPref::URLS) {
1231 is_google_in_startpages = std::count_if(session_startup_prefs.urls.begin(),
1232 session_startup_prefs.urls.end(),
1233 IsGoogleUrl) > 0;
1234 }
1235
1236 int ping_delay = is_first_run_ ? master_prefs_->ping_delay : 1205 int ping_delay = is_first_run_ ? master_prefs_->ping_delay :
1237 pref_service->GetInteger(first_run::GetPingDelayPrefName().c_str()); 1206 pref_service->GetInteger(first_run::GetPingDelayPrefName().c_str());
1238 RLZTracker::InitRlzDelayed(is_first_run_, ping_delay, 1207 RLZTracker::InitRlzFromProfileDelayed(profile_, is_first_run_, ping_delay);
1239 is_google_default_search, is_google_homepage,
1240 is_google_in_startpages);
1241
1242 // Prime the RLZ cache for the home page access point so that its avaiable
1243 // for the startup page if needed (i.e., when the startup page is set to
1244 // the home page).
1245 RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_HOME_PAGE, NULL);
1246 #endif // defined(ENABLE_RLZ) && !defined(OS_CHROMEOS) 1208 #endif // defined(ENABLE_RLZ) && !defined(OS_CHROMEOS)
1247 1209
1248 // Configure modules that need access to resources. 1210 // Configure modules that need access to resources.
1249 net::NetModule::SetResourceProvider(chrome_common_net::NetResourceProvider); 1211 net::NetModule::SetResourceProvider(chrome_common_net::NetResourceProvider);
1250 1212
1251 // In unittest mode, this will do nothing. In normal mode, this will create 1213 // In unittest mode, this will do nothing. In normal mode, this will create
1252 // the global IntranetRedirectDetector instance, which will promptly go to 1214 // the global IntranetRedirectDetector instance, which will promptly go to
1253 // sleep for seven seconds (to avoid slowing startup), and wake up afterwards 1215 // sleep for seven seconds (to avoid slowing startup), and wake up afterwards
1254 // to see if it should do anything else. 1216 // to see if it should do anything else.
1255 // 1217 //
(...skipping 394 matching lines...) Expand 10 before | Expand all | Expand 10 after
1650 if (base::win::GetVersion() <= base::win::VERSION_XP) 1612 if (base::win::GetVersion() <= base::win::VERSION_XP)
1651 uma_name += "_XP"; 1613 uma_name += "_XP";
1652 1614
1653 uma_name += "_PreRead_"; 1615 uma_name += "_PreRead_";
1654 uma_name += pre_read_percentage; 1616 uma_name += pre_read_percentage;
1655 AddPreReadHistogramTime(uma_name.c_str(), time); 1617 AddPreReadHistogramTime(uma_name.c_str(), time);
1656 } 1618 }
1657 #endif 1619 #endif
1658 #endif 1620 #endif
1659 } 1621 }
OLDNEW
« no previous file with comments | « chrome/browser/automation/testing_automation_provider_chromeos.cc ('k') | chrome/browser/chromeos/login/eula_screen.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698