Index: blimp/engine/session/tab.cc |
diff --git a/blimp/engine/session/tab.cc b/blimp/engine/session/tab.cc |
index 5bd619189d4cb6bd290142bb49f81de5da716fc3..afda6131f41062d44009071be2971e5aa0594de1 100644 |
--- a/blimp/engine/session/tab.cc |
+++ b/blimp/engine/session/tab.cc |
@@ -42,10 +42,14 @@ Tab::Tab(std::unique_ptr<content::WebContents> web_contents, |
// that to override user agent string from BlimpContentRendererClient. |
web_contents_->SetUserAgentOverride(GetBlimpEngineUserAgent()); |
+ render_widget_feature_->SetDelegate(tab_id_, this); |
+ |
Observe(web_contents_.get()); |
} |
-Tab::~Tab() {} |
+Tab::~Tab() { |
+ render_widget_feature_->RemoveDelegate(tab_id_); |
+} |
void Tab::Resize(float device_pixel_ratio, const gfx::Size& size_in_dips) { |
DVLOG(1) << "Resize to " << size_in_dips.ToString() << ", " |
@@ -154,5 +158,19 @@ void Tab::SendPageLoadStatusUpdate(PageLoadStatus load_status) { |
net::CompletionCallback()); |
} |
+void Tab::OnWebGestureEvent(content::RenderWidgetHost* render_widget_host, |
+ std::unique_ptr<blink::WebGestureEvent> event) { |
+ TRACE_EVENT1("blimp", "Tab::OnWebGestureEvent", "type", event->type); |
+ render_widget_host->ForwardGestureEvent(*event); |
+} |
+ |
+void Tab::OnCompositorMessageReceived( |
+ content::RenderWidgetHost* render_widget_host, |
+ const std::vector<uint8_t>& message) { |
+ TRACE_EVENT0("blimp", "Tab::OnCompositorMessageReceived"); |
+ |
+ render_widget_host->HandleCompositorProto(message); |
+} |
+ |
} // namespace engine |
} // namespace blimp |