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 #ifndef BLIMP_CLIENT_FEATURE_RENDER_WIDGET_FEATURE_H_ | 5 #ifndef BLIMP_CLIENT_CORE_RENDER_WIDGET_RENDER_WIDGET_FEATURE_H_ |
6 #define BLIMP_CLIENT_FEATURE_RENDER_WIDGET_FEATURE_H_ | 6 #define BLIMP_CLIENT_CORE_RENDER_WIDGET_RENDER_WIDGET_FEATURE_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
11 #include <memory> | 11 #include <memory> |
12 | 12 |
13 #include "base/containers/small_map.h" | 13 #include "base/containers/small_map.h" |
14 #include "base/macros.h" | 14 #include "base/macros.h" |
15 #include "blimp/net/blimp_message_processor.h" | 15 #include "blimp/net/blimp_message_processor.h" |
16 #include "blimp/net/input_message_generator.h" | 16 #include "blimp/net/input_message_generator.h" |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 // be one RenderWidgetMessageDelegate per tab. | 87 // be one RenderWidgetMessageDelegate per tab. |
88 // virtual for testing. | 88 // virtual for testing. |
89 virtual void SetDelegate(int tab_id, RenderWidgetFeatureDelegate* delegate); | 89 virtual void SetDelegate(int tab_id, RenderWidgetFeatureDelegate* delegate); |
90 virtual void RemoveDelegate(const int tab_id); | 90 virtual void RemoveDelegate(const int tab_id); |
91 | 91 |
92 // BlimpMessageProcessor implementation. | 92 // BlimpMessageProcessor implementation. |
93 void ProcessMessage(std::unique_ptr<BlimpMessage> message, | 93 void ProcessMessage(std::unique_ptr<BlimpMessage> message, |
94 const net::CompletionCallback& callback) override; | 94 const net::CompletionCallback& callback) override; |
95 | 95 |
96 private: | 96 private: |
97 void ProcessRenderWidgetMessage( | 97 void ProcessRenderWidgetMessage(RenderWidgetFeatureDelegate* delegate, |
98 RenderWidgetFeatureDelegate* delegate, | 98 const RenderWidgetMessage& message); |
99 const RenderWidgetMessage& message); | |
100 | 99 |
101 void ProcessCompositorMessage(RenderWidgetFeatureDelegate* delegate, | 100 void ProcessCompositorMessage(RenderWidgetFeatureDelegate* delegate, |
102 const CompositorMessage& message); | 101 const CompositorMessage& message); |
103 | 102 |
104 // Returns nullptr if no delegate is found. | 103 // Returns nullptr if no delegate is found. |
105 RenderWidgetFeatureDelegate* FindDelegate(const int tab_id); | 104 RenderWidgetFeatureDelegate* FindDelegate(const int tab_id); |
106 | 105 |
107 typedef base::SmallMap<std::map<int, RenderWidgetFeatureDelegate*>> | 106 typedef base::SmallMap<std::map<int, RenderWidgetFeatureDelegate*>> |
108 DelegateMap; | 107 DelegateMap; |
109 | 108 |
110 DelegateMap delegates_; | 109 DelegateMap delegates_; |
111 | 110 |
112 InputMessageGenerator input_message_generator_; | 111 InputMessageGenerator input_message_generator_; |
113 | 112 |
114 // Used to send BlimpMessage::INPUT type messages to the engine. | 113 // Used to send BlimpMessage::INPUT type messages to the engine. |
115 std::unique_ptr<BlimpMessageProcessor> outgoing_input_message_processor_; | 114 std::unique_ptr<BlimpMessageProcessor> outgoing_input_message_processor_; |
116 | 115 |
117 // Used to send BlimpMessage::COMPOSITOR messages to the engine. | 116 // Used to send BlimpMessage::COMPOSITOR messages to the engine. |
118 std::unique_ptr<BlimpMessageProcessor> outgoing_compositor_message_processor_; | 117 std::unique_ptr<BlimpMessageProcessor> outgoing_compositor_message_processor_; |
119 | 118 |
120 DISALLOW_COPY_AND_ASSIGN(RenderWidgetFeature); | 119 DISALLOW_COPY_AND_ASSIGN(RenderWidgetFeature); |
121 }; | 120 }; |
122 | 121 |
123 } // namespace client | 122 } // namespace client |
124 } // namespace blimp | 123 } // namespace blimp |
125 | 124 |
126 #endif // BLIMP_CLIENT_FEATURE_RENDER_WIDGET_FEATURE_H_ | 125 #endif // BLIMP_CLIENT_CORE_RENDER_WIDGET_RENDER_WIDGET_FEATURE_H_ |
OLD | NEW |