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

Side by Side Diff: chrome/browser/extensions/api/web_navigation/web_navigation_api.cc

Issue 2733283002: Require explicit selection of traits for LazyInstance (Closed)
Patch Set: l10n again Created 3 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
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 // Implements the Chrome Extensions WebNavigation API. 5 // Implements the Chrome Extensions WebNavigation API.
6 6
7 #include "chrome/browser/extensions/api/web_navigation/web_navigation_api.h" 7 #include "chrome/browser/extensions/api/web_navigation/web_navigation_api.h"
8 8
9 #include "base/lazy_instance.h" 9 #include "base/lazy_instance.h"
10 #include "chrome/browser/chrome_notification_types.h" 10 #include "chrome/browser/chrome_notification_types.h"
(...skipping 26 matching lines...) Expand all
37 namespace extensions { 37 namespace extensions {
38 38
39 namespace helpers = web_navigation_api_helpers; 39 namespace helpers = web_navigation_api_helpers;
40 namespace keys = web_navigation_api_constants; 40 namespace keys = web_navigation_api_constants;
41 namespace web_navigation = api::web_navigation; 41 namespace web_navigation = api::web_navigation;
42 42
43 namespace { 43 namespace {
44 44
45 typedef std::map<content::WebContents*, WebNavigationTabObserver*> 45 typedef std::map<content::WebContents*, WebNavigationTabObserver*>
46 TabObserverMap; 46 TabObserverMap;
47 static base::LazyInstance<TabObserverMap> g_tab_observer = 47 static base::LazyInstance<TabObserverMap>::DestructorAtExit g_tab_observer =
48 LAZY_INSTANCE_INITIALIZER; 48 LAZY_INSTANCE_INITIALIZER;
49 49
50 } // namespace 50 } // namespace
51 51
52 // WebNavigtionEventRouter ------------------------------------------- 52 // WebNavigtionEventRouter -------------------------------------------
53 53
54 WebNavigationEventRouter::PendingWebContents::PendingWebContents() 54 WebNavigationEventRouter::PendingWebContents::PendingWebContents()
55 : source_web_contents(NULL), 55 : source_web_contents(NULL),
56 source_frame_host(NULL), 56 source_frame_host(NULL),
57 target_web_contents(NULL), 57 target_web_contents(NULL),
(...skipping 508 matching lines...) Expand 10 before | Expand all | Expand 10 after
566 web_navigation::OnTabReplaced::kEventName); 566 web_navigation::OnTabReplaced::kEventName);
567 } 567 }
568 568
569 WebNavigationAPI::~WebNavigationAPI() { 569 WebNavigationAPI::~WebNavigationAPI() {
570 } 570 }
571 571
572 void WebNavigationAPI::Shutdown() { 572 void WebNavigationAPI::Shutdown() {
573 EventRouter::Get(browser_context_)->UnregisterObserver(this); 573 EventRouter::Get(browser_context_)->UnregisterObserver(this);
574 } 574 }
575 575
576 static base::LazyInstance<BrowserContextKeyedAPIFactory<WebNavigationAPI> > 576 static base::LazyInstance<BrowserContextKeyedAPIFactory<WebNavigationAPI>>::
577 g_factory = LAZY_INSTANCE_INITIALIZER; 577 DestructorAtExit g_factory = LAZY_INSTANCE_INITIALIZER;
578 578
579 // static 579 // static
580 BrowserContextKeyedAPIFactory<WebNavigationAPI>* 580 BrowserContextKeyedAPIFactory<WebNavigationAPI>*
581 WebNavigationAPI::GetFactoryInstance() { 581 WebNavigationAPI::GetFactoryInstance() {
582 return g_factory.Pointer(); 582 return g_factory.Pointer();
583 } 583 }
584 584
585 void WebNavigationAPI::OnListenerAdded(const EventListenerInfo& details) { 585 void WebNavigationAPI::OnListenerAdded(const EventListenerInfo& details) {
586 web_navigation_event_router_.reset(new WebNavigationEventRouter( 586 web_navigation_event_router_.reset(new WebNavigationEventRouter(
587 Profile::FromBrowserContext(browser_context_))); 587 Profile::FromBrowserContext(browser_context_)));
588 EventRouter::Get(browser_context_)->UnregisterObserver(this); 588 EventRouter::Get(browser_context_)->UnregisterObserver(this);
589 } 589 }
590 590
591 } // namespace extensions 591 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698