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..09486865046df18abba780a3a9bff28ef54fd33e 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_(new device::GeolocationDelegate), |
nyquist
2016/09/01 00:34:30
Nit: base::MakeUnique here and below too
CJ
2016/09/01 00:45:40
Done.
|
+ geolocation_feature_( |
+ new 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())); |