OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef EXTENSIONS_RENDERER_GUEST_VIEW_EXTENSIONS_GUEST_VIEW_CONTAINER_H_ | 5 #ifndef EXTENSIONS_RENDERER_GUEST_VIEW_EXTENSIONS_GUEST_VIEW_CONTAINER_H_ |
6 #define EXTENSIONS_RENDERER_GUEST_VIEW_EXTENSIONS_GUEST_VIEW_CONTAINER_H_ | 6 #define EXTENSIONS_RENDERER_GUEST_VIEW_EXTENSIONS_GUEST_VIEW_CONTAINER_H_ |
7 | 7 |
8 #include <queue> | 8 #include <queue> |
9 | 9 |
10 #include "base/memory/linked_ptr.h" | 10 #include "base/memory/linked_ptr.h" |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
60 ~AttachRequest() override; | 60 ~AttachRequest() override; |
61 | 61 |
62 void PerformRequest() override; | 62 void PerformRequest() override; |
63 void HandleResponse(const IPC::Message& message) override; | 63 void HandleResponse(const IPC::Message& message) override; |
64 | 64 |
65 private: | 65 private: |
66 const int guest_instance_id_; | 66 const int guest_instance_id_; |
67 scoped_ptr<base::DictionaryValue> params_; | 67 scoped_ptr<base::DictionaryValue> params_; |
68 }; | 68 }; |
69 | 69 |
| 70 class AttachIframeRequest : public Request { |
| 71 public: |
| 72 AttachIframeRequest(GuestViewContainer* container, |
| 73 int guest_instance_id, |
| 74 v8::Handle<v8::Function> callback, |
| 75 v8::Isolate* isolate); |
| 76 ~AttachIframeRequest() override; |
| 77 |
| 78 void PerformRequest() override; |
| 79 void HandleResponse(const IPC::Message& message) override; |
| 80 private: |
| 81 const int guest_instance_id_; |
| 82 }; |
| 83 |
70 class DetachRequest : public Request { | 84 class DetachRequest : public Request { |
71 public: | 85 public: |
72 DetachRequest(GuestViewContainer* container, | 86 DetachRequest(GuestViewContainer* container, |
73 v8::Handle<v8::Function> callback, | 87 v8::Handle<v8::Function> callback, |
74 v8::Isolate* isolate); | 88 v8::Isolate* isolate); |
75 ~DetachRequest() override; | 89 ~DetachRequest() override; |
76 | 90 |
77 void PerformRequest() override; | 91 void PerformRequest() override; |
78 void HandleResponse(const IPC::Message& message) override; | 92 void HandleResponse(const IPC::Message& message) override; |
79 }; | 93 }; |
80 | 94 |
81 explicit ExtensionsGuestViewContainer(content::RenderFrame* render_frame); | 95 explicit ExtensionsGuestViewContainer(content::RenderFrame* render_frame); |
82 ~ExtensionsGuestViewContainer() override; | 96 ~ExtensionsGuestViewContainer() override; |
83 | 97 |
84 static ExtensionsGuestViewContainer* FromID(int element_instance_id); | 98 static ExtensionsGuestViewContainer* FromID(int element_instance_id); |
85 | 99 |
86 void IssueRequest(linked_ptr<Request> request); | 100 void IssueRequest(linked_ptr<Request> request); |
87 void RegisterDestructionCallback(v8::Handle<v8::Function> callback, | 101 void RegisterDestructionCallback(v8::Handle<v8::Function> callback, |
88 v8::Isolate* isolate); | 102 v8::Isolate* isolate); |
89 void RegisterElementResizeCallback(v8::Handle<v8::Function> callback, | 103 void RegisterElementResizeCallback(v8::Handle<v8::Function> callback, |
90 v8::Isolate* isolate); | 104 v8::Isolate* isolate); |
91 | 105 |
| 106 void GuestContentWindowReady(const IPC::Message& message); |
| 107 |
92 // BrowserPluginDelegate implementation. | 108 // BrowserPluginDelegate implementation. |
93 bool OnMessageReceived(const IPC::Message& message) override; | 109 bool OnMessageReceived(const IPC::Message& message) override; |
94 void SetElementInstanceID(int element_instance_id) override; | 110 void SetElementInstanceID(int element_instance_id) override; |
95 void Ready() override; | 111 void Ready() override; |
96 void DidResizeElement(const gfx::Size& old_size, | 112 void DidResizeElement(const gfx::Size& old_size, |
97 const gfx::Size& new_size) override; | 113 const gfx::Size& new_size) override; |
98 | 114 |
99 private: | 115 private: |
100 void OnHandleCallback(const IPC::Message& message); | 116 void OnHandleCallback(const IPC::Message& message); |
101 | 117 |
(...skipping 11 matching lines...) Expand all Loading... |
113 | 129 |
114 ScopedPersistent<v8::Function> element_resize_callback_; | 130 ScopedPersistent<v8::Function> element_resize_callback_; |
115 v8::Isolate* element_resize_isolate_; | 131 v8::Isolate* element_resize_isolate_; |
116 | 132 |
117 DISALLOW_COPY_AND_ASSIGN(ExtensionsGuestViewContainer); | 133 DISALLOW_COPY_AND_ASSIGN(ExtensionsGuestViewContainer); |
118 }; | 134 }; |
119 | 135 |
120 } // namespace extensions | 136 } // namespace extensions |
121 | 137 |
122 #endif // EXTENSIONS_RENDERER_GUEST_VIEW_EXTENSIONS_GUEST_VIEW_CONTAINER_H_ | 138 #endif // EXTENSIONS_RENDERER_GUEST_VIEW_EXTENSIONS_GUEST_VIEW_CONTAINER_H_ |
OLD | NEW |