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

Side by Side Diff: chrome/browser/extensions/api/tabs/tabs_windows_api.cc

Issue 1099553002: extensions: windows: list all windows from the current profile (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add application windows resize constraint test Created 5 years, 5 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 #include "chrome/browser/extensions/api/tabs/tabs_windows_api.h" 5 #include "chrome/browser/extensions/api/tabs/tabs_windows_api.h"
6 6
7 #include "base/lazy_instance.h" 7 #include "base/lazy_instance.h"
8 #include "chrome/browser/extensions/api/tabs/tabs_event_router.h" 8 #include "chrome/browser/extensions/api/tabs/tabs_event_router.h"
9 #include "chrome/browser/extensions/api/tabs/windows_event_router.h" 9 #include "chrome/browser/extensions/api/tabs/windows_event_router.h"
10 #include "chrome/browser/profiles/profile.h" 10 #include "chrome/browser/profiles/profile.h"
(...skipping 23 matching lines...) Expand all
34 event_router->RegisterObserver(this, api::tabs::OnAttached::kEventName); 34 event_router->RegisterObserver(this, api::tabs::OnAttached::kEventName);
35 event_router->RegisterObserver(this, api::tabs::OnRemoved::kEventName); 35 event_router->RegisterObserver(this, api::tabs::OnRemoved::kEventName);
36 event_router->RegisterObserver(this, api::tabs::OnReplaced::kEventName); 36 event_router->RegisterObserver(this, api::tabs::OnReplaced::kEventName);
37 event_router->RegisterObserver(this, api::tabs::OnZoomChange::kEventName); 37 event_router->RegisterObserver(this, api::tabs::OnZoomChange::kEventName);
38 38
39 // Windows API Events. 39 // Windows API Events.
40 event_router->RegisterObserver(this, api::windows::OnCreated::kEventName); 40 event_router->RegisterObserver(this, api::windows::OnCreated::kEventName);
41 event_router->RegisterObserver(this, api::windows::OnRemoved::kEventName); 41 event_router->RegisterObserver(this, api::windows::OnRemoved::kEventName);
42 event_router->RegisterObserver(this, 42 event_router->RegisterObserver(this,
43 api::windows::OnFocusChanged::kEventName); 43 api::windows::OnFocusChanged::kEventName);
44
45 // We listen to windows events right from the beginning because we
46 // have to create a WindowController for each AppWindow.
47 windows_event_router();
dcheng 2015/06/29 18:15:49 Construct this directly in the initializer list in
llandwerlin-old 2015/06/30 10:20:47 Done.
44 } 48 }
45 49
46 TabsWindowsAPI::~TabsWindowsAPI() { 50 TabsWindowsAPI::~TabsWindowsAPI() {
47 } 51 }
48 52
49 // static 53 // static
50 TabsWindowsAPI* TabsWindowsAPI::Get(content::BrowserContext* context) { 54 TabsWindowsAPI* TabsWindowsAPI::Get(content::BrowserContext* context) {
51 return BrowserContextKeyedAPIFactory<TabsWindowsAPI>::Get(context); 55 return BrowserContextKeyedAPIFactory<TabsWindowsAPI>::Get(context);
52 } 56 }
53 57
(...skipping 19 matching lines...) Expand all
73 g_factory = LAZY_INSTANCE_INITIALIZER; 77 g_factory = LAZY_INSTANCE_INITIALIZER;
74 78
75 BrowserContextKeyedAPIFactory<TabsWindowsAPI>* 79 BrowserContextKeyedAPIFactory<TabsWindowsAPI>*
76 TabsWindowsAPI::GetFactoryInstance() { 80 TabsWindowsAPI::GetFactoryInstance() {
77 return g_factory.Pointer(); 81 return g_factory.Pointer();
78 } 82 }
79 83
80 void TabsWindowsAPI::OnListenerAdded(const EventListenerInfo& details) { 84 void TabsWindowsAPI::OnListenerAdded(const EventListenerInfo& details) {
81 // Initialize the event routers. 85 // Initialize the event routers.
82 tabs_event_router(); 86 tabs_event_router();
83 windows_event_router(); 87 windows_event_router()->DispatchEvents();
84 EventRouter::Get(browser_context_)->UnregisterObserver(this); 88 EventRouter::Get(browser_context_)->UnregisterObserver(this);
85 } 89 }
86 90
87 } // namespace extensions 91 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698