OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/guest_view/guest_view_event.h" | 5 #include "extensions/browser/guest_view/guest_view_event.h" |
6 | 6 |
7 #include "extensions/browser/event_router.h" | |
8 #include "extensions/browser/guest_view/guest_view_base.h" | 7 #include "extensions/browser/guest_view/guest_view_base.h" |
| 8 #include "extensions/browser/guest_view/guest_view_manager.h" |
9 | 9 |
10 namespace extensions { | 10 namespace extensions { |
11 | 11 |
12 GuestViewEvent::GuestViewEvent(const std::string& name, | 12 GuestViewEvent::GuestViewEvent(const std::string& name, |
13 scoped_ptr<base::DictionaryValue> args) | 13 scoped_ptr<base::DictionaryValue> args) |
14 : name_(name), | 14 : name_(name), |
15 args_(args.Pass()) { | 15 args_(args.Pass()) { |
16 } | 16 } |
17 | 17 |
18 GuestViewEvent::~GuestViewEvent() { | 18 GuestViewEvent::~GuestViewEvent() { |
19 } | 19 } |
20 | 20 |
21 void GuestViewEvent::Dispatch(GuestViewBase* guest, int instance_id) { | 21 void GuestViewEvent::Dispatch(GuestViewBase* guest, int instance_id) { |
22 EventFilteringInfo info; | 22 GuestViewManager::FromBrowserContext(guest->browser_context())-> |
23 info.SetInstanceID(instance_id); | 23 DispatchEvent(name_, args_.Pass(), guest, instance_id); |
24 scoped_ptr<base::ListValue> args(new base::ListValue()); | |
25 args->Append(args_.release()); | |
26 | |
27 EventRouter::DispatchEvent( | |
28 guest->owner_web_contents(), | |
29 guest->browser_context(), | |
30 guest->owner_extension_id(), | |
31 name_, | |
32 args.Pass(), | |
33 EventRouter::USER_GESTURE_UNKNOWN, | |
34 info); | |
35 | 24 |
36 delete this; | 25 delete this; |
37 } | 26 } |
38 | 27 |
39 } // namespace extensions | 28 } // namespace extensions |
OLD | NEW |