| 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 04ba1b79083b4118747ced61299ebad3aea6df2f..3645a179829469de6e3131a61380f26bb1a53563 100644
|
| --- a/blimp/client/session/blimp_client_session.cc
|
| +++ b/blimp/client/session/blimp_client_session.cc
|
| @@ -20,6 +20,7 @@
|
| #include "blimp/client/core/contents/ime_feature.h"
|
| #include "blimp/client/core/contents/navigation_feature.h"
|
| #include "blimp/client/core/contents/tab_control_feature.h"
|
| +#include "blimp/client/core/geolocation/geolocation_feature.h"
|
| #include "blimp/client/core/render_widget/render_widget_feature.h"
|
| #include "blimp/client/core/session/client_network_components.h"
|
| #include "blimp/client/core/session/cross_thread_network_event_observer.h"
|
| @@ -30,6 +31,8 @@
|
| #include "blimp/net/blob_channel/blob_channel_receiver.h"
|
| #include "blimp/net/blob_channel/helium_blob_receiver_delegate.h"
|
| #include "blimp/net/thread_pipe_manager.h"
|
| +#include "device/geolocation/geolocation_delegate.h"
|
| +#include "device/geolocation/location_arbitrator.h"
|
| #include "url/gurl.h"
|
|
|
| namespace blimp {
|
| @@ -37,6 +40,10 @@ namespace client {
|
|
|
| BlimpClientSession::BlimpClientSession(const GURL& assigner_endpoint)
|
| : io_thread_("BlimpIOThread"),
|
| + geolocation_delegate_(base::MakeUnique<device::GeolocationDelegate>()),
|
| + geolocation_feature_(base::MakeUnique<GeolocationFeature>(
|
| + base::MakeUnique<device::LocationArbitrator>(
|
| + geolocation_delegate_.get()))),
|
| tab_control_feature_(new TabControlFeature),
|
| navigation_feature_(new NavigationFeature),
|
| ime_feature_(new ImeFeature),
|
| @@ -108,6 +115,9 @@ void BlimpClientSession::RegisterFeatures() {
|
| io_thread_.task_runner(), net_components_->GetBrowserConnectionHandler());
|
|
|
| // Register features' message senders and receivers.
|
| + geolocation_feature_->set_outgoing_message_processor(
|
| + thread_pipe_manager_->RegisterFeature(BlimpMessage::kGeolocation,
|
| + geolocation_feature_.get()));
|
| tab_control_feature_->set_outgoing_message_processor(
|
| thread_pipe_manager_->RegisterFeature(BlimpMessage::kTabControl,
|
| tab_control_feature_.get()));
|
|
|