OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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/browser_main.h" | 5 #include "chrome/browser/browser_main.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 25 matching lines...) Expand all Loading... |
36 #include "chrome/browser/browser_init.h" | 36 #include "chrome/browser/browser_init.h" |
37 #include "chrome/browser/prefs/browser_prefs.h" | 37 #include "chrome/browser/prefs/browser_prefs.h" |
38 #include "chrome/browser/browser_process.h" | 38 #include "chrome/browser/browser_process.h" |
39 #include "chrome/browser/browser_process_impl.h" | 39 #include "chrome/browser/browser_process_impl.h" |
40 #include "chrome/browser/browser_shutdown.h" | 40 #include "chrome/browser/browser_shutdown.h" |
41 #include "chrome/browser/chrome_thread.h" | 41 #include "chrome/browser/chrome_thread.h" |
42 #include "chrome/browser/dom_ui/chrome_url_data_manager.h" | 42 #include "chrome/browser/dom_ui/chrome_url_data_manager.h" |
43 #include "chrome/browser/extensions/extension_protocols.h" | 43 #include "chrome/browser/extensions/extension_protocols.h" |
44 #include "chrome/browser/extensions/extensions_service.h" | 44 #include "chrome/browser/extensions/extensions_service.h" |
45 #include "chrome/browser/first_run/first_run.h" | 45 #include "chrome/browser/first_run/first_run.h" |
| 46 #include "chrome/browser/icon_url_data_manager.h" |
46 #include "chrome/browser/jankometer.h" | 47 #include "chrome/browser/jankometer.h" |
47 #include "chrome/browser/labs.h" | 48 #include "chrome/browser/labs.h" |
48 #include "chrome/browser/metrics/histogram_synchronizer.h" | 49 #include "chrome/browser/metrics/histogram_synchronizer.h" |
49 #include "chrome/browser/metrics/metrics_log.h" | 50 #include "chrome/browser/metrics/metrics_log.h" |
50 #include "chrome/browser/metrics/metrics_service.h" | 51 #include "chrome/browser/metrics/metrics_service.h" |
51 #include "chrome/browser/net/blob_url_request_job_factory.h" | 52 #include "chrome/browser/net/blob_url_request_job_factory.h" |
52 #include "chrome/browser/net/predictor_api.h" | 53 #include "chrome/browser/net/predictor_api.h" |
53 #include "chrome/browser/net/metadata_url_request.h" | 54 #include "chrome/browser/net/metadata_url_request.h" |
54 #include "chrome/browser/net/sdch_dictionary_fetcher.h" | 55 #include "chrome/browser/net/sdch_dictionary_fetcher.h" |
55 #include "chrome/browser/net/websocket_experiment/websocket_experiment_runner.h" | 56 #include "chrome/browser/net/websocket_experiment/websocket_experiment_runner.h" |
(...skipping 1257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1313 // Configure the network module so it has access to resources. | 1314 // Configure the network module so it has access to resources. |
1314 net::NetModule::SetResourceProvider(chrome_common_net::NetResourceProvider); | 1315 net::NetModule::SetResourceProvider(chrome_common_net::NetResourceProvider); |
1315 | 1316 |
1316 // Register our global network handler for chrome:// and | 1317 // Register our global network handler for chrome:// and |
1317 // chrome-extension:// URLs. | 1318 // chrome-extension:// URLs. |
1318 RegisterURLRequestChromeJob(); | 1319 RegisterURLRequestChromeJob(); |
1319 RegisterExtensionProtocols(); | 1320 RegisterExtensionProtocols(); |
1320 RegisterMetadataURLRequestHandler(); | 1321 RegisterMetadataURLRequestHandler(); |
1321 RegisterBlobURLRequestJobFactory(); | 1322 RegisterBlobURLRequestJobFactory(); |
1322 | 1323 |
| 1324 // Register our global network handler for icon: URLs. |
| 1325 RegisterURLRequestIconJob(); |
| 1326 |
1323 // In unittest mode, this will do nothing. In normal mode, this will create | 1327 // In unittest mode, this will do nothing. In normal mode, this will create |
1324 // the global GoogleURLTracker and IntranetRedirectDetector instances, which | 1328 // the global GoogleURLTracker and IntranetRedirectDetector instances, which |
1325 // will promptly go to sleep for five and seven seconds, respectively (to | 1329 // will promptly go to sleep for five and seven seconds, respectively (to |
1326 // avoid slowing startup), and wake up afterwards to see if they should do | 1330 // avoid slowing startup), and wake up afterwards to see if they should do |
1327 // anything else. | 1331 // anything else. |
1328 // | 1332 // |
1329 // A simpler way of doing all this would be to have some function which could | 1333 // A simpler way of doing all this would be to have some function which could |
1330 // give the time elapsed since startup, and simply have these objects check | 1334 // give the time elapsed since startup, and simply have these objects check |
1331 // that when asked to initialize themselves, but this doesn't seem to exist. | 1335 // that when asked to initialize themselves, but this doesn't seem to exist. |
1332 // | 1336 // |
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1503 metrics->Stop(); | 1507 metrics->Stop(); |
1504 | 1508 |
1505 // browser_shutdown takes care of deleting browser_process, so we need to | 1509 // browser_shutdown takes care of deleting browser_process, so we need to |
1506 // release it. | 1510 // release it. |
1507 ignore_result(browser_process.release()); | 1511 ignore_result(browser_process.release()); |
1508 browser_shutdown::Shutdown(); | 1512 browser_shutdown::Shutdown(); |
1509 | 1513 |
1510 TRACE_EVENT_END("BrowserMain", 0, 0); | 1514 TRACE_EVENT_END("BrowserMain", 0, 0); |
1511 return result_code; | 1515 return result_code; |
1512 } | 1516 } |
OLD | NEW |