OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #include "content/child/runtime_features.h" | 5 #include "content/child/runtime_features.h" |
6 | 6 |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/feature_list.h" | 10 #include "base/feature_list.h" |
(...skipping 15 matching lines...) Expand all Loading... |
26 #endif | 26 #endif |
27 | 27 |
28 using blink::WebRuntimeFeatures; | 28 using blink::WebRuntimeFeatures; |
29 | 29 |
30 namespace content { | 30 namespace content { |
31 | 31 |
32 static void SetRuntimeFeatureDefaultsForPlatform() { | 32 static void SetRuntimeFeatureDefaultsForPlatform() { |
33 #if defined(OS_ANDROID) | 33 #if defined(OS_ANDROID) |
34 // EME implementation needs Android MediaCodec API. | 34 // EME implementation needs Android MediaCodec API. |
35 if (!media::MediaCodecUtil::IsMediaCodecAvailable()) { | 35 if (!media::MediaCodecUtil::IsMediaCodecAvailable()) { |
36 WebRuntimeFeatures::enablePrefixedEncryptedMedia(false); | |
37 WebRuntimeFeatures::enableEncryptedMedia(false); | 36 WebRuntimeFeatures::enableEncryptedMedia(false); |
38 } | 37 } |
39 | 38 |
40 // Android does not have support for PagePopup | 39 // Android does not have support for PagePopup |
41 WebRuntimeFeatures::enablePagePopup(false); | 40 WebRuntimeFeatures::enablePagePopup(false); |
42 // Android does not yet support SharedWorker. crbug.com/154571 | 41 // Android does not yet support SharedWorker. crbug.com/154571 |
43 WebRuntimeFeatures::enableSharedWorker(false); | 42 WebRuntimeFeatures::enableSharedWorker(false); |
44 // Android does not yet support NavigatorContentUtils. | 43 // Android does not yet support NavigatorContentUtils. |
45 WebRuntimeFeatures::enableNavigatorContentUtils(false); | 44 WebRuntimeFeatures::enableNavigatorContentUtils(false); |
46 WebRuntimeFeatures::enableOrientationEvent(true); | 45 WebRuntimeFeatures::enableOrientationEvent(true); |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
97 | 96 |
98 if (command_line.HasSwitch(switches::kDisableSharedWorkers)) | 97 if (command_line.HasSwitch(switches::kDisableSharedWorkers)) |
99 WebRuntimeFeatures::enableSharedWorker(false); | 98 WebRuntimeFeatures::enableSharedWorker(false); |
100 | 99 |
101 if (command_line.HasSwitch(switches::kDisableWebAudio)) | 100 if (command_line.HasSwitch(switches::kDisableWebAudio)) |
102 WebRuntimeFeatures::enableWebAudio(false); | 101 WebRuntimeFeatures::enableWebAudio(false); |
103 | 102 |
104 if (command_line.HasSwitch(switches::kDisableSpeechAPI)) | 103 if (command_line.HasSwitch(switches::kDisableSpeechAPI)) |
105 WebRuntimeFeatures::enableScriptedSpeech(false); | 104 WebRuntimeFeatures::enableScriptedSpeech(false); |
106 | 105 |
107 if (command_line.HasSwitch(switches::kDisableEncryptedMedia)) | |
108 WebRuntimeFeatures::enableEncryptedMedia(false); | |
109 | |
110 if (command_line.HasSwitch(switches::kEnablePrefixedEncryptedMedia)) | |
111 WebRuntimeFeatures::enablePrefixedEncryptedMedia(true); | |
112 | |
113 if (command_line.HasSwitch(switches::kDisableFileSystem)) | 106 if (command_line.HasSwitch(switches::kDisableFileSystem)) |
114 WebRuntimeFeatures::enableFileSystem(false); | 107 WebRuntimeFeatures::enableFileSystem(false); |
115 | 108 |
116 if (command_line.HasSwitch(switches::kEnableExperimentalCanvasFeatures)) | 109 if (command_line.HasSwitch(switches::kEnableExperimentalCanvasFeatures)) |
117 WebRuntimeFeatures::enableExperimentalCanvasFeatures(true); | 110 WebRuntimeFeatures::enableExperimentalCanvasFeatures(true); |
118 | 111 |
119 if (!command_line.HasSwitch(switches::kDisableAcceleratedJpegDecoding)) | 112 if (!command_line.HasSwitch(switches::kDisableAcceleratedJpegDecoding)) |
120 WebRuntimeFeatures::enableDecodeToYUV(true); | 113 WebRuntimeFeatures::enableDecodeToYUV(true); |
121 | 114 |
122 if (command_line.HasSwitch(switches::kEnableDisplayList2dCanvas)) | 115 if (command_line.HasSwitch(switches::kEnableDisplayList2dCanvas)) |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
199 if (command_line.HasSwitch(switches::kDisableBlinkFeatures)) { | 192 if (command_line.HasSwitch(switches::kDisableBlinkFeatures)) { |
200 std::vector<std::string> disabled_features = base::SplitString( | 193 std::vector<std::string> disabled_features = base::SplitString( |
201 command_line.GetSwitchValueASCII(switches::kDisableBlinkFeatures), | 194 command_line.GetSwitchValueASCII(switches::kDisableBlinkFeatures), |
202 ",", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL); | 195 ",", base::TRIM_WHITESPACE, base::SPLIT_WANT_ALL); |
203 for (const std::string& feature : disabled_features) | 196 for (const std::string& feature : disabled_features) |
204 WebRuntimeFeatures::enableFeatureFromString(feature, false); | 197 WebRuntimeFeatures::enableFeatureFromString(feature, false); |
205 } | 198 } |
206 } | 199 } |
207 | 200 |
208 } // namespace content | 201 } // namespace content |
OLD | NEW |