| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This file defines all the public base::FeatureList features for the content | 5 // This file defines all the public base::FeatureList features for the content |
| 6 // module. | 6 // module. |
| 7 | 7 |
| 8 #ifndef CONTENT_PUBLIC_COMMON_CONTENT_FEATURES_H_ | 8 #ifndef CONTENT_PUBLIC_COMMON_CONTENT_FEATURES_H_ |
| 9 #define CONTENT_PUBLIC_COMMON_CONTENT_FEATURES_H_ | 9 #define CONTENT_PUBLIC_COMMON_CONTENT_FEATURES_H_ |
| 10 | 10 |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 70 CONTENT_EXPORT extern const base::Feature kResourceLoadScheduler; | 70 CONTENT_EXPORT extern const base::Feature kResourceLoadScheduler; |
| 71 CONTENT_EXPORT extern const base::Feature kScrollAnchoring; | 71 CONTENT_EXPORT extern const base::Feature kScrollAnchoring; |
| 72 CONTENT_EXPORT extern const base::Feature kServiceWorkerNavigationPreload; | 72 CONTENT_EXPORT extern const base::Feature kServiceWorkerNavigationPreload; |
| 73 CONTENT_EXPORT extern const base::Feature kServiceWorkerScriptStreaming; | 73 CONTENT_EXPORT extern const base::Feature kServiceWorkerScriptStreaming; |
| 74 CONTENT_EXPORT extern const base::Feature kSharedArrayBuffer; | 74 CONTENT_EXPORT extern const base::Feature kSharedArrayBuffer; |
| 75 CONTENT_EXPORT extern const base::Feature kSignInProcessIsolation; | 75 CONTENT_EXPORT extern const base::Feature kSignInProcessIsolation; |
| 76 CONTENT_EXPORT extern const base::Feature kSkipCompositingSmallScrollers; | 76 CONTENT_EXPORT extern const base::Feature kSkipCompositingSmallScrollers; |
| 77 CONTENT_EXPORT extern const base::Feature kSlimmingPaintInvalidation; | 77 CONTENT_EXPORT extern const base::Feature kSlimmingPaintInvalidation; |
| 78 CONTENT_EXPORT extern const base::Feature kTimerThrottlingForHiddenFrames; | 78 CONTENT_EXPORT extern const base::Feature kTimerThrottlingForHiddenFrames; |
| 79 CONTENT_EXPORT extern const base::Feature kTokenBinding; | 79 CONTENT_EXPORT extern const base::Feature kTokenBinding; |
| 80 | |
| 81 CONTENT_EXPORT extern const base::Feature kTopDocumentIsolation; | 80 CONTENT_EXPORT extern const base::Feature kTopDocumentIsolation; |
| 82 | |
| 83 // If the kTopDocumentIsolation base::Feature is enabled, then it can be | |
| 84 // configured by additional parameters (see also GetFieldTrialParamsByFeature). | |
| 85 // |kTopDocumentIsolationModeParam| is the name of an optional parameter that | |
| 86 // specifies TopDocumentIsolationMode. Valid values of this parameter are | |
| 87 // strings that represent numeric values of TopDocumentIsolationMode enum values | |
| 88 // (e.g. "1" for TopDocumentIsolationMode::CrossSite). | |
| 89 CONTENT_EXPORT extern const char kTopDocumentIsolationModeParam[]; | |
| 90 | |
| 91 // If the kTopDocumentIsolation base::Feature is enabled, the values of this | |
| 92 // enum represent the mode for selecting *which* frames to isolate. | |
| 93 // | |
| 94 // These values should NOT be renumbered, because 1) they can be specified in a | |
| 95 // server-side trial config and 2) they can be persisted in the state of | |
| 96 // chrome://flags selected by the user. | |
| 97 enum class TopDocumentIsolationMode { | |
| 98 // This value indicates that kTopDocumentIsolationModeParam was not specified. | |
| 99 // Corresponds to "Enabled" state in chrome://flags (i.e. the user didn't | |
| 100 // select a more specific isolation mode). | |
| 101 Unspecified = 0, | |
| 102 | |
| 103 // Each of the modes below corresponds to "Enabled (<name> - <description>)" | |
| 104 // state in chrome://flags. | |
| 105 #define FOR_EACH_TDI_MODE(V) \ | |
| 106 V(CrossSite, 1, \ | |
| 107 "isolate all frames from sites other than the top-level frame") \ | |
| 108 V(Ads, 2, "isolate only cross-site ads detected by heuristics") | |
| 109 | |
| 110 #define DEFINE_TDI_MODE_ENUM_VALUE(name, value, description) name = value, | |
| 111 FOR_EACH_TDI_MODE(DEFINE_TDI_MODE_ENUM_VALUE) | |
| 112 #undef DEFINE_TDI_MODE_ENUM_VALUE | |
| 113 }; | |
| 114 | |
| 115 CONTENT_EXPORT extern const base::Feature kTouchpadAndWheelScrollLatching; | 81 CONTENT_EXPORT extern const base::Feature kTouchpadAndWheelScrollLatching; |
| 116 CONTENT_EXPORT extern const base::Feature kUseFeaturePolicyForPermissions; | 82 CONTENT_EXPORT extern const base::Feature kUseFeaturePolicyForPermissions; |
| 117 CONTENT_EXPORT extern const base::Feature kUseMojoAudioOutputStreamFactory; | 83 CONTENT_EXPORT extern const base::Feature kUseMojoAudioOutputStreamFactory; |
| 118 CONTENT_EXPORT extern const base::Feature kVibrateRequiresUserGesture; | 84 CONTENT_EXPORT extern const base::Feature kVibrateRequiresUserGesture; |
| 119 CONTENT_EXPORT extern const base::Feature kVrShell; | 85 CONTENT_EXPORT extern const base::Feature kVrShell; |
| 120 CONTENT_EXPORT extern const base::Feature kWebAssembly; | 86 CONTENT_EXPORT extern const base::Feature kWebAssembly; |
| 121 CONTENT_EXPORT extern const base::Feature kWebAssemblyStreaming; | 87 CONTENT_EXPORT extern const base::Feature kWebAssemblyStreaming; |
| 122 CONTENT_EXPORT extern const base::Feature kWebAssemblyTrapHandler; | 88 CONTENT_EXPORT extern const base::Feature kWebAssemblyTrapHandler; |
| 123 CONTENT_EXPORT extern const base::Feature kWebAuth; | 89 CONTENT_EXPORT extern const base::Feature kWebAuth; |
| 124 CONTENT_EXPORT extern const base::Feature kWebGLImageChromium; | 90 CONTENT_EXPORT extern const base::Feature kWebGLImageChromium; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 149 CONTENT_EXPORT extern const base::Feature kDeviceMonitorMac; | 115 CONTENT_EXPORT extern const base::Feature kDeviceMonitorMac; |
| 150 CONTENT_EXPORT extern const base::Feature kMacV2Sandbox; | 116 CONTENT_EXPORT extern const base::Feature kMacV2Sandbox; |
| 151 #endif // defined(OS_MACOSX) | 117 #endif // defined(OS_MACOSX) |
| 152 | 118 |
| 153 // DON'T ADD RANDOM STUFF HERE. Put it in the main section above in | 119 // DON'T ADD RANDOM STUFF HERE. Put it in the main section above in |
| 154 // alphabetical order, or in one of the ifdefs (also in order in each section). | 120 // alphabetical order, or in one of the ifdefs (also in order in each section). |
| 155 | 121 |
| 156 } // namespace features | 122 } // namespace features |
| 157 | 123 |
| 158 #endif // CONTENT_PUBLIC_COMMON_CONTENT_FEATURES_H_ | 124 #endif // CONTENT_PUBLIC_COMMON_CONTENT_FEATURES_H_ |
| OLD | NEW |