| Index: blimp/client/core/blimp_client_context_impl.cc
|
| diff --git a/blimp/client/core/blimp_client_context_impl.cc b/blimp/client/core/blimp_client_context_impl.cc
|
| index 75ab73c39e9adbf027ad76741b8724d73f87642f..d53b864df65d80473815f6b910f3d51c267801cc 100644
|
| --- a/blimp/client/core/blimp_client_context_impl.cc
|
| +++ b/blimp/client/core/blimp_client_context_impl.cc
|
| @@ -11,6 +11,7 @@
|
| #include "base/threading/sequenced_task_runner_handle.h"
|
| #include "blimp/client/core/blimp_client_switches.h"
|
| #include "blimp/client/core/compositor/blimp_compositor_dependencies.h"
|
| +#include "blimp/client/core/compositor/blob_channel_feature.h"
|
| #include "blimp/client/core/contents/blimp_contents_impl.h"
|
| #include "blimp/client/core/contents/blimp_contents_manager.h"
|
| #include "blimp/client/core/contents/ime_feature.h"
|
| @@ -65,6 +66,7 @@ BlimpClientContextImpl::BlimpClientContextImpl(
|
| blimp_compositor_dependencies_(
|
| base::MakeUnique<BlimpCompositorDependencies>(
|
| std::move(compositor_dependencies))),
|
| + blob_channel_feature_(new BlobChannelFeature(this)),
|
| ime_feature_(new ImeFeature),
|
| navigation_feature_(new NavigationFeature),
|
| render_widget_feature_(new RenderWidgetFeature),
|
| @@ -174,6 +176,8 @@ void BlimpClientContextImpl::ConnectWithAssignment(
|
|
|
| void BlimpClientContextImpl::RegisterFeatures() {
|
| // Register features' message senders and receivers.
|
| + thread_pipe_manager_->RegisterFeature(BlimpMessage::kBlobChannel,
|
| + blob_channel_feature_.get());
|
| ime_feature_->set_outgoing_message_processor(
|
| thread_pipe_manager_->RegisterFeature(BlimpMessage::kIme,
|
| ime_feature_.get()));
|
| @@ -208,5 +212,14 @@ void BlimpClientContextImpl::CreateIdentitySource() {
|
| base::Unretained(this)));
|
| }
|
|
|
| +void BlimpClientContextImpl::OnImageDecodeError() {
|
| + // Currently we just drop the connection on image decoding error.
|
| + io_thread_task_runner_->PostTask(
|
| + FROM_HERE,
|
| + base::Bind(
|
| + &BrowserConnectionHandler::DropCurrentConnection,
|
| + base::Unretained(net_components_->GetBrowserConnectionHandler())));
|
| +}
|
| +
|
| } // namespace client
|
| } // namespace blimp
|
|
|