1 // Copyright 2016 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 "components/arc/arc_features.h" 6 7 namespace arc { 8 9 // Controls whether ARC++ app runtime performance statistics collection is 10 // enabled. 11 const base::Feature kAppRuntimePerormanceStatistics{ 12 "AppRuntimePerormanceStatistics", base::FEATURE_ENABLED_BY_DEFAULT}; 13 14 // Controls ACTION_BOOT_COMPLETED broadcast for third party applications on ARC. 15 // When disabled, third party apps will not receive this broadcast. 16 const base::Feature kBootCompletedBroadcastFeature { 17 "ArcBootCompletedBroadcast", base::FEATURE_ENABLED_BY_DEFAULT 18 }; 19 20 // Controls whether we should delete all ARC data before transitioning a user 21 // from regular to child account. 22 const base::Feature kCleanArcDataOnRegularToChildTransitionFeature{ 23 "ArcCleanDataOnRegularToChildTransition", 24 base::FEATURE_DISABLED_BY_DEFAULT}; 25 26 // Controls experimental Custom Tabs feature for ARC. 27 const base::Feature kCustomTabsExperimentFeature{ 28 "ArcCustomTabsExperiment", base::FEATURE_ENABLED_BY_DEFAULT}; 29 30 // Controls whether ARC applications support zoom in/out. 31 const base::Feature kEnableApplicationZoomFeature{ 32 "ArcEnableApplicationZoomFeature", base::FEATURE_DISABLED_BY_DEFAULT}; 33 34 // Controls whether ARC handles child->regular account transition. 35 const base::Feature kEnableChildToRegularTransitionFeature{ 36 "ArcEnableChildToRegularTransition", base::FEATURE_ENABLED_BY_DEFAULT}; 37 38 // Controls whether ARC documents from DocumentsProviders should be shown in 39 // Chrome OS Files app. 40 const base::Feature kEnableDocumentsProviderInFilesAppFeature{ 41 "ArcEnableDocumentsProviderInFilesApp", base::FEATURE_ENABLED_BY_DEFAULT}; 42 43 // Controls whether ARC handles regular->child account transition. 44 const base::Feature kEnableRegularToChildTransitionFeature{ 45 "ArcEnableRegularToChildTransition", base::FEATURE_ENABLED_BY_DEFAULT}; 46 47 // Controls whether we should delegate audio focus requests from ARC to Chrome. 48 const base::Feature kEnableUnifiedAudioFocusFeature{ 49 "ArcEnableUnifiedAudioFocus", base::FEATURE_ENABLED_BY_DEFAULT}; 50 51 // Controls experimental file picker feature for ARC. 52 const base::Feature kFilePickerExperimentFeature{ 53 "ArcFilePickerExperiment", base::FEATURE_ENABLED_BY_DEFAULT}; 54 55 // Toggles between native bridge implementations for ARC. 56 // Note, that we keep the original feature name to preserve 57 // corresponding metrics. 58 const base::Feature kNativeBridgeToggleFeature{ 59 "ArcNativeBridgeExperiment", base::FEATURE_ENABLED_BY_DEFAULT}; 60 61 // Controls ARC picture-in-picture feature. If this is enabled, then Android 62 // will control which apps can enter PIP. If this is disabled, then ARC PIP 63 // will be disabled. 64 const base::Feature kPictureInPictureFeature{"ArcPictureInPicture", 65 base::FEATURE_ENABLED_BY_DEFAULT}; 66 67 // Controls experimental print spooler feature for ARC. 68 const base::Feature kPrintSpoolerExperimentFeature{ 69 "ArcPrintSpoolerExperiment", base::FEATURE_ENABLED_BY_DEFAULT}; 70 71 // Controls Smart Text Selection for Chrome. 72 // When enabled, the context menu will show contextual quick actions based on 73 // the current text selection. 74 const base::Feature kSmartTextSelectionFeature{ 75 "ArcSmartTextSelection", base::FEATURE_ENABLED_BY_DEFAULT}; 76 77 // Controls ARC USB host integration. 78 // When enabled, Android apps will be able to use usb host features. 79 const base::Feature kUsbHostFeature{"ArcUsbHost", 80 base::FEATURE_ENABLED_BY_DEFAULT}; 81 82 // Controls ARC USB Storage UI feature. 83 // When enabled, chrome://settings and Files.app will ask if the user wants 84 // to expose USB storage devices to ARC. 85 const base::Feature kUsbStorageUIFeature{"ArcUsbStorageUI", 86 base::FEATURE_ENABLED_BY_DEFAULT}; 87 88 // Controls whether ARC uses VideoDecoder-backed video decoding. 89 // When enabled, GpuArcVideoDecodeAccelerator will use VdVideoDecodeAccelerator 90 // to delegate decoding tasks to VideoDecoder implementations, instead of using 91 // VDA implementations created by GpuVideoDecodeAcceleratorFactory. 92 const base::Feature kVideoDecoder{"ArcVideoDecoder", 93 base::FEATURE_DISABLED_BY_DEFAULT}; 94 95 } // namespace arc 96