OLD | NEW |
---|---|
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 "extensions/browser/event_router.h" | 5 #include "extensions/browser/event_router.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/atomic_sequence_num.h" | 9 #include "base/atomic_sequence_num.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
148 // static | 148 // static |
149 void EventRouter::DispatchEvent(IPC::Sender* ipc_sender, | 149 void EventRouter::DispatchEvent(IPC::Sender* ipc_sender, |
150 void* browser_context_id, | 150 void* browser_context_id, |
151 const std::string& extension_id, | 151 const std::string& extension_id, |
152 const std::string& event_name, | 152 const std::string& event_name, |
153 scoped_ptr<ListValue> event_args, | 153 scoped_ptr<ListValue> event_args, |
154 UserGestureState user_gesture, | 154 UserGestureState user_gesture, |
155 const EventFilteringInfo& info) { | 155 const EventFilteringInfo& info) { |
156 int event_id = g_extension_event_id.GetNext(); | 156 int event_id = g_extension_event_id.GetNext(); |
157 | 157 |
158 if (!BrowserThread::CurrentlyOn(BrowserThread::UI)) { | |
159 BrowserThread::PostTask( | |
not at google - send to devlin
2015/05/15 21:55:29
comment when this is the case, what happens in tha
lazyboy
2015/05/16 00:07:43
Done.
| |
160 BrowserThread::UI, FROM_HERE, | |
161 base::Bind(&EventRouter::IncrementInFlightEventsOnUI, | |
162 browser_context_id, extension_id, event_id, event_name)); | |
163 } else { | |
164 IncrementInFlightEventsOnUI(browser_context_id, extension_id, event_id, | |
165 event_name); | |
166 } | |
167 | |
158 DispatchExtensionMessage(ipc_sender, browser_context_id, extension_id, | 168 DispatchExtensionMessage(ipc_sender, browser_context_id, extension_id, |
159 event_id, event_name, event_args.get(), user_gesture, | 169 event_id, event_name, event_args.get(), user_gesture, |
160 info); | 170 info); |
161 | |
162 BrowserThread::PostTask( | |
163 BrowserThread::UI, FROM_HERE, | |
164 base::Bind(&EventRouter::IncrementInFlightEventsOnUI, browser_context_id, | |
165 extension_id, event_id, event_name)); | |
166 } | 171 } |
167 | 172 |
168 EventRouter::EventRouter(BrowserContext* browser_context, | 173 EventRouter::EventRouter(BrowserContext* browser_context, |
169 ExtensionPrefs* extension_prefs) | 174 ExtensionPrefs* extension_prefs) |
170 : browser_context_(browser_context), | 175 : browser_context_(browser_context), |
171 extension_prefs_(extension_prefs), | 176 extension_prefs_(extension_prefs), |
172 extension_registry_observer_(this), | 177 extension_registry_observer_(this), |
173 listeners_(this) { | 178 listeners_(this) { |
174 registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_TERMINATED, | 179 registrar_.Add(this, content::NOTIFICATION_RENDERER_PROCESS_TERMINATED, |
175 content::NotificationService::AllSources()); | 180 content::NotificationService::AllSources()); |
(...skipping 650 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
826 const std::string& extension_id, | 831 const std::string& extension_id, |
827 const GURL& listener_url, | 832 const GURL& listener_url, |
828 content::BrowserContext* browser_context) | 833 content::BrowserContext* browser_context) |
829 : event_name(event_name), | 834 : event_name(event_name), |
830 extension_id(extension_id), | 835 extension_id(extension_id), |
831 listener_url(listener_url), | 836 listener_url(listener_url), |
832 browser_context(browser_context) { | 837 browser_context(browser_context) { |
833 } | 838 } |
834 | 839 |
835 } // namespace extensions | 840 } // namespace extensions |
OLD | NEW |