| Index: blimp/client/session/blimp_client_session.cc
|
| diff --git a/blimp/client/session/blimp_client_session.cc b/blimp/client/session/blimp_client_session.cc
|
| index 226b625cd557d8fa7ae22dac71c2a18dc8b74920..2383738bc2dfb0b58552f91f9d914395e3ac6917 100644
|
| --- a/blimp/client/session/blimp_client_session.cc
|
| +++ b/blimp/client/session/blimp_client_session.cc
|
| @@ -15,6 +15,7 @@
|
| #include "blimp/client/feature/navigation_feature.h"
|
| #include "blimp/client/feature/render_widget_feature.h"
|
| #include "blimp/client/feature/tab_control_feature.h"
|
| +#include "blimp/client/feature/web_input_feature.h"
|
| #include "blimp/net/blimp_connection.h"
|
| #include "blimp/net/blimp_message_processor.h"
|
| #include "blimp/net/blimp_message_thread_pipe.h"
|
| @@ -149,6 +150,7 @@ BlimpClientSession::BlimpClientSession()
|
| : io_thread_("BlimpIOThread"),
|
| tab_control_feature_(new TabControlFeature),
|
| navigation_feature_(new NavigationFeature),
|
| + web_input_feature_(new WebInputFeature),
|
| render_widget_feature_(new RenderWidgetFeature),
|
| weak_factory_(this) {
|
| net_components_.reset(new ClientNetworkComponents(
|
| @@ -222,6 +224,10 @@ void BlimpClientSession::RegisterFeatures() {
|
| // outgoing BlimpMessageProcessor in the RenderWidgetFeature.
|
| thread_pipe_manager_->RegisterFeature(BlimpMessage::RENDER_WIDGET,
|
| render_widget_feature_.get());
|
| +
|
| + web_input_feature_->set_outgoing_message_processor(
|
| + thread_pipe_manager_->RegisterFeature(BlimpMessage::IME,
|
| + web_input_feature_.get()));
|
| }
|
|
|
| void BlimpClientSession::OnConnected() {}
|
| @@ -236,6 +242,10 @@ NavigationFeature* BlimpClientSession::GetNavigationFeature() const {
|
| return navigation_feature_.get();
|
| }
|
|
|
| +WebInputFeature* BlimpClientSession::GetWebInputFeature() const {
|
| + return web_input_feature_.get();
|
| +}
|
| +
|
| RenderWidgetFeature* BlimpClientSession::GetRenderWidgetFeature() const {
|
| return render_widget_feature_.get();
|
| }
|
|
|