| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "build/build_config.h" | 5 #include "build/build_config.h" |
| 6 | 6 |
| 7 #include "chrome/browser/ui/webui/ntp/new_tab_ui.h" | 7 #include "chrome/browser/ui/webui/ntp/new_tab_ui.h" |
| 8 | 8 |
| 9 #include <set> | 9 #include <set> |
| 10 | 10 |
| (...skipping 12 matching lines...) Expand all Loading... |
| 23 #include "chrome/browser/sessions/session_types.h" | 23 #include "chrome/browser/sessions/session_types.h" |
| 24 #include "chrome/browser/sessions/tab_restore_service.h" | 24 #include "chrome/browser/sessions/tab_restore_service.h" |
| 25 #include "chrome/browser/sessions/tab_restore_service_delegate.h" | 25 #include "chrome/browser/sessions/tab_restore_service_delegate.h" |
| 26 #include "chrome/browser/sessions/tab_restore_service_factory.h" | 26 #include "chrome/browser/sessions/tab_restore_service_factory.h" |
| 27 #include "chrome/browser/sessions/tab_restore_service_observer.h" | 27 #include "chrome/browser/sessions/tab_restore_service_observer.h" |
| 28 #include "chrome/browser/sync/profile_sync_service.h" | 28 #include "chrome/browser/sync/profile_sync_service.h" |
| 29 #include "chrome/browser/themes/theme_service.h" | 29 #include "chrome/browser/themes/theme_service.h" |
| 30 #include "chrome/browser/themes/theme_service_factory.h" | 30 #include "chrome/browser/themes/theme_service_factory.h" |
| 31 #include "chrome/browser/ui/browser.h" | 31 #include "chrome/browser/ui/browser.h" |
| 32 #include "chrome/browser/ui/webui/ntp/app_launcher_handler.h" | 32 #include "chrome/browser/ui/webui/ntp/app_launcher_handler.h" |
| 33 #include "chrome/browser/ui/webui/ntp/favicon_webui_handler.h" |
| 33 #include "chrome/browser/ui/webui/ntp/foreign_session_handler.h" | 34 #include "chrome/browser/ui/webui/ntp/foreign_session_handler.h" |
| 34 #include "chrome/browser/ui/webui/ntp/most_visited_handler.h" | 35 #include "chrome/browser/ui/webui/ntp/most_visited_handler.h" |
| 35 #include "chrome/browser/ui/webui/ntp/new_tab_page_sync_handler.h" | 36 #include "chrome/browser/ui/webui/ntp/new_tab_page_sync_handler.h" |
| 36 #include "chrome/browser/ui/webui/ntp/ntp_login_handler.h" | 37 #include "chrome/browser/ui/webui/ntp/ntp_login_handler.h" |
| 37 #include "chrome/browser/ui/webui/ntp/ntp_resource_cache.h" | 38 #include "chrome/browser/ui/webui/ntp/ntp_resource_cache.h" |
| 38 #include "chrome/browser/ui/webui/ntp/shown_sections_handler.h" | 39 #include "chrome/browser/ui/webui/ntp/shown_sections_handler.h" |
| 39 #include "chrome/browser/ui/webui/ntp/value_helper.h" | 40 #include "chrome/browser/ui/webui/ntp/value_helper.h" |
| 40 #include "chrome/browser/ui/webui/theme_source.h" | 41 #include "chrome/browser/ui/webui/theme_source.h" |
| 41 #include "chrome/common/chrome_switches.h" | 42 #include "chrome/common/chrome_switches.h" |
| 42 #include "chrome/common/extensions/extension.h" | 43 #include "chrome/common/extensions/extension.h" |
| (...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 340 static bool first_view = true; | 341 static bool first_view = true; |
| 341 if (first_view) { | 342 if (first_view) { |
| 342 first_view = false; | 343 first_view = false; |
| 343 } | 344 } |
| 344 | 345 |
| 345 if (!GetProfile()->IsOffTheRecord()) { | 346 if (!GetProfile()->IsOffTheRecord()) { |
| 346 PrefService* pref_service = GetProfile()->GetPrefs(); | 347 PrefService* pref_service = GetProfile()->GetPrefs(); |
| 347 AddMessageHandler((new NTPLoginHandler())->Attach(this)); | 348 AddMessageHandler((new NTPLoginHandler())->Attach(this)); |
| 348 AddMessageHandler((new ShownSectionsHandler(pref_service))->Attach(this)); | 349 AddMessageHandler((new ShownSectionsHandler(pref_service))->Attach(this)); |
| 349 AddMessageHandler((new browser_sync::ForeignSessionHandler())-> | 350 AddMessageHandler((new browser_sync::ForeignSessionHandler())-> |
| 350 Attach(this)); | 351 Attach(this)); |
| 351 AddMessageHandler((new MostVisitedHandler())->Attach(this)); | 352 AddMessageHandler((new MostVisitedHandler())->Attach(this)); |
| 352 AddMessageHandler((new RecentlyClosedTabsHandler())->Attach(this)); | 353 AddMessageHandler((new RecentlyClosedTabsHandler())->Attach(this)); |
| 353 AddMessageHandler((new MetricsHandler())->Attach(this)); | 354 AddMessageHandler((new MetricsHandler())->Attach(this)); |
| 354 if (GetProfile()->IsSyncAccessible()) | 355 if (GetProfile()->IsSyncAccessible()) |
| 355 AddMessageHandler((new NewTabPageSyncHandler())->Attach(this)); | 356 AddMessageHandler((new NewTabPageSyncHandler())->Attach(this)); |
| 356 ExtensionService* service = GetProfile()->GetExtensionService(); | 357 ExtensionService* service = GetProfile()->GetExtensionService(); |
| 357 // We might not have an ExtensionService (on ChromeOS when not logged in | 358 // We might not have an ExtensionService (on ChromeOS when not logged in |
| 358 // for example). | 359 // for example). |
| 359 if (service) | 360 if (service) |
| 360 AddMessageHandler((new AppLauncherHandler(service))->Attach(this)); | 361 AddMessageHandler((new AppLauncherHandler(service))->Attach(this)); |
| 361 | 362 |
| 362 AddMessageHandler((new NewTabPageSetHomePageHandler())->Attach(this)); | 363 AddMessageHandler((new NewTabPageSetHomePageHandler())->Attach(this)); |
| 363 AddMessageHandler((new NewTabPageClosePromoHandler())->Attach(this)); | 364 AddMessageHandler((new NewTabPageClosePromoHandler())->Attach(this)); |
| 365 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kNewTabPage4)) |
| 366 AddMessageHandler((new FaviconWebUIHandler())->Attach(this)); |
| 364 } | 367 } |
| 365 | 368 |
| 366 // Initializing the CSS and HTML can require some CPU, so do it after | 369 // Initializing the CSS and HTML can require some CPU, so do it after |
| 367 // we've hooked up the most visited handler. This allows the DB query | 370 // we've hooked up the most visited handler. This allows the DB query |
| 368 // for the new tab thumbs to happen earlier. | 371 // for the new tab thumbs to happen earlier. |
| 369 InitializeCSSCaches(); | 372 InitializeCSSCaches(); |
| 370 NewTabHTMLSource* html_source = | 373 NewTabHTMLSource* html_source = |
| 371 new NewTabHTMLSource(GetProfile()->GetOriginalProfile()); | 374 new NewTabHTMLSource(GetProfile()->GetOriginalProfile()); |
| 372 contents->profile()->GetChromeURLDataManager()->AddDataSource(html_source); | 375 contents->profile()->GetChromeURLDataManager()->AddDataSource(html_source); |
| 373 | 376 |
| (...skipping 256 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 630 SendResponse(request_id, html_bytes); | 633 SendResponse(request_id, html_bytes); |
| 631 } | 634 } |
| 632 | 635 |
| 633 std::string NewTabUI::NewTabHTMLSource::GetMimeType(const std::string&) const { | 636 std::string NewTabUI::NewTabHTMLSource::GetMimeType(const std::string&) const { |
| 634 return "text/html"; | 637 return "text/html"; |
| 635 } | 638 } |
| 636 | 639 |
| 637 bool NewTabUI::NewTabHTMLSource::ShouldReplaceExistingSource() const { | 640 bool NewTabUI::NewTabHTMLSource::ShouldReplaceExistingSource() const { |
| 638 return false; | 641 return false; |
| 639 } | 642 } |
| OLD | NEW |