Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(835)

Unified Diff: device/generic_sensor/sensor_provider_impl.cc

Issue 2896583005: Reland: Refactor DeviceMotionEventPump to use //device/generic_sensor instead of //device/sensors (Closed)
Patch Set: address more comments Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: device/generic_sensor/sensor_provider_impl.cc
diff --git a/device/generic_sensor/sensor_provider_impl.cc b/device/generic_sensor/sensor_provider_impl.cc
index 3e78e3a174fa6935ad799d53e38f38b4eebc0439..3c63680dba7ff9890b5b63893e9297203ddd101b 100644
--- a/device/generic_sensor/sensor_provider_impl.cc
+++ b/device/generic_sensor/sensor_provider_impl.cc
@@ -6,11 +6,13 @@
#include <utility>
+#include "base/feature_list.h"
#include "base/memory/ptr_util.h"
#include "base/threading/thread_task_runner_handle.h"
#include "device/generic_sensor/platform_sensor_provider.h"
#include "device/generic_sensor/sensor_impl.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
+#include "services/device/public/cpp/device_features.h"
namespace device {
@@ -54,6 +56,16 @@ SensorProviderImpl::~SensorProviderImpl() {}
void SensorProviderImpl::GetSensor(mojom::SensorType type,
mojom::SensorRequest sensor_request,
GetSensorCallback callback) {
+ // For sensors that are used by DeviceMotionEvent, don't check the
+ // features::kGenericSensor flag.
timvolodine 2017/06/07 20:37:36 nit: maybe add a TODO to remove when and if generi
juncai 2017/06/07 23:05:08 Done.
+ if (!base::FeatureList::IsEnabled(features::kGenericSensor) &&
+ !(type == mojom::SensorType::ACCELEROMETER ||
+ type == mojom::SensorType::LINEAR_ACCELERATION ||
+ type == mojom::SensorType::GYROSCOPE)) {
+ NotifySensorCreated(nullptr, nullptr, std::move(callback));
+ return;
+ }
+
auto cloned_handle = provider_->CloneSharedBufferHandle();
if (!cloned_handle.is_valid()) {
NotifySensorCreated(nullptr, nullptr, std::move(callback));

Powered by Google App Engine
This is Rietveld 408576698