1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "services/device/public/cpp/device_features.h"
6 
7 namespace features {
8 
9 // Enables an extra set of concrete sensors classes based on Generic Sensor API,
10 // which expose previously unexposed platform features, e.g. ALS or Magnetometer
11 const base::Feature kGenericSensorExtraClasses{
12     "GenericSensorExtraClasses", base::FEATURE_DISABLED_BY_DEFAULT};
13 // Enables usage of the Windows.Devices.Sensors WinRT API for the sensor
14 // backend instead of the ISensor API on Windows.
15 const base::Feature kWinrtSensorsImplementation{
16     "WinrtSensorsImplementation", base::FEATURE_ENABLED_BY_DEFAULT};
17 // Enables usage of the Windows.Devices.Geolocation WinRT API for the
18 // LocationProvider instead of the NetworkLocationProvider on Windows.
19 const base::Feature kWinrtGeolocationImplementation{
20     "WinrtGeolocationImplementation", base::FEATURE_DISABLED_BY_DEFAULT};
21 // Enables usage of the CoreLocation API for LocationProvider instead of
22 // NetworkLocationProvider for macOS. The |kMacCoreLocationImplementation| flag
23 // enables a permissions UX workflow that navigates the user to give the
24 // browser location permission in the macOS System Preferences. The
25 // |kMacCoreLocationBackend| flag switches to using the the macOS Core Location
26 // API instead of using the NetworkLocationProvider to gather location through
27 // WiFi scans.
28 const base::Feature kMacCoreLocationImplementation{
29     "MacCoreLocationImplementation", base::FEATURE_ENABLED_BY_DEFAULT};
30 const base::Feature kMacCoreLocationBackend{"MacCoreLocationBackend",
31                                             base::FEATURE_DISABLED_BY_DEFAULT};
32 
33 #if defined(OS_WIN)
34 // Switches from enumerating serial ports using GUID_DEVINTERFACE_SERIALPORT to
35 // GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR. This is an partial solution to
36 // https://crbug.com/1119497.
37 const base::Feature kUseSerialBusEnumerator{"UseSerialBusEnumerator",
38                                             base::FEATURE_ENABLED_BY_DEFAULT};
39 #endif  // defined(OS_WIN)
40 
41 }  // namespace features
42