Commit b5466a98 authored by Ulan Degenbaev's avatar Ulan Degenbaev Committed by Commit Bot

Add chrome://flags entry for bloated renderer detection

- Adds chrome://flags entry
- Adds a FeatureFlag
- Make existing Blink flag dependent on the Chrome flag

Bug: 808143

Change-Id: Ib48328a63cda8007cf863741cae92957757538e2
Reviewed-on: https://chromium-review.googlesource.com/1140328
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Reviewed-by: default avatarJochen Eisinger <jochen@chromium.org>
Reviewed-by: default avatarMichael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#576455}
parent 94b0138d
......@@ -4113,6 +4113,11 @@ const FeatureEntry kFeatureEntries[] = {
FEATURE_VALUE_TYPE(app_list::features::kEnableContinueReading)},
#endif // OS_CHROMEOS
{"enable-bloated-renderer-detection",
flag_descriptions::kEnableBloatedRendererDetectionName,
flag_descriptions::kEnableBloatedRendererDetectionDescription, kOsAll,
FEATURE_VALUE_TYPE(features::kBloatedRendererDetection)},
// NOTE: Adding a new flag requires adding a corresponding entry to enum
// "LoginCustomFlags" in tools/metrics/histograms/enums.xml. See "Flag
// Histograms" in tools/metrics/histograms/README.md (run the
......
......@@ -65,6 +65,10 @@ const char kEnableBlinkHeapIncrementalMarkingName[] =
const char kEnableBlinkHeapIncrementalMarkingDescription[] =
"Enable incremental marking in Blink";
const char kEnableBloatedRendererDetectionName[] = "Bloated renderer detection";
const char kEnableBloatedRendererDetectionDescription[] =
"Enable bloated renderer detection";
const char kSystemTrayUnifiedName[] = "New system menu";
const char kSystemTrayUnifiedDescription[] =
"Enable the experimental system menu.";
......
......@@ -67,6 +67,9 @@ extern const char kAutomaticPasswordGenerationDescription[];
extern const char kEnableBlinkHeapIncrementalMarkingName[];
extern const char kEnableBlinkHeapIncrementalMarkingDescription[];
extern const char kEnableBloatedRendererDetectionName[];
extern const char kEnableBloatedRendererDetectionDescription[];
extern const char kSystemTrayUnifiedName[];
extern const char kSystemTrayUnifiedDescription[];
......
......@@ -106,6 +106,9 @@ void SetRuntimeFeaturesDefaultsAndUpdateFromArgs(
if (base::FeatureList::IsEnabled(features::kBlinkHeapIncrementalMarking))
WebRuntimeFeatures::EnableBlinkHeapIncrementalMarking(true);
if (base::FeatureList::IsEnabled(features::kBloatedRendererDetection))
WebRuntimeFeatures::EnableBloatedRendererDetection(true);
if (command_line.HasSwitch(switches::kDisableDatabases))
WebRuntimeFeatures::EnableDatabase(false);
......
......@@ -55,6 +55,10 @@ const base::Feature kAudioServiceOutOfProcess{
const base::Feature kBlinkHeapIncrementalMarking{
"BlinkHeapIncrementalMarking", base::FEATURE_DISABLED_BY_DEFAULT};
// Enable bloated renderer detection.
const base::Feature kBloatedRendererDetection{
"BloatedRendererDetection", base::FEATURE_DISABLED_BY_DEFAULT};
// Allows swipe left/right from touchpad change browser navigation. Currently
// only enabled by default on CrOS.
const base::Feature kTouchpadOverscrollHistoryNavigation {
......
......@@ -26,6 +26,7 @@ CONTENT_EXPORT extern const base::Feature kAudioServiceAudioStreams;
CONTENT_EXPORT extern const base::Feature kAudioServiceLaunchOnStartup;
CONTENT_EXPORT extern const base::Feature kAudioServiceOutOfProcess;
CONTENT_EXPORT extern const base::Feature kBlinkHeapIncrementalMarking;
CONTENT_EXPORT extern const base::Feature kBloatedRendererDetection;
CONTENT_EXPORT extern const base::Feature kBlockCredentialedSubresources;
CONTENT_EXPORT extern const base::Feature kBrotliEncoding;
CONTENT_EXPORT extern const base::Feature kCacheInlineScriptCode;
......
......@@ -75,6 +75,7 @@ class WebRuntimeFeatures {
BLINK_PLATFORM_EXPORT static void EnableAllowActivationDelegationAttr(bool);
BLINK_PLATFORM_EXPORT static void EnableAudioOutputDevices(bool);
BLINK_PLATFORM_EXPORT static void EnableBlinkHeapIncrementalMarking(bool);
BLINK_PLATFORM_EXPORT static void EnableBloatedRendererDetection(bool);
BLINK_PLATFORM_EXPORT static void EnableCacheInlineScriptCode(bool);
BLINK_PLATFORM_EXPORT static void EnableCanvas2dImageChromium(bool);
BLINK_PLATFORM_EXPORT static void EnableCSSHexAlphaColor(bool);
......
......@@ -39,6 +39,10 @@ void WebRuntimeFeatures::EnableBlinkHeapIncrementalMarking(bool enable) {
RuntimeEnabledFeatures::SetHeapIncrementalMarkingEnabled(enable);
}
void WebRuntimeFeatures::EnableBloatedRendererDetection(bool enable) {
RuntimeEnabledFeatures::SetBloatedRendererDetectionEnabled(enable);
}
void WebRuntimeFeatures::EnableExperimentalFeatures(bool enable) {
RuntimeEnabledFeatures::SetExperimentalFeaturesEnabled(enable);
}
......
......@@ -28970,6 +28970,7 @@ from previous Chrome versions.
<int value="1115476442" label="PolicyTool:disabled"/>
<int value="1115635149" label="EnableUnifiedMultiDeviceSetup:enabled"/>
<int value="1116593018" label="CaptureThumbnailOnLoadFinished:disabled"/>
<int value="1117795262" label="BloatedRendererDetection:disabled"/>
<int value="1118109174" label="enable-launcher-search-provider-api"/>
<int value="1126061778" label="CaptureThumbnailOnLoadFinished:enabled"/>
<int value="1127183523" label="PassiveEventListenersDueToFling:enabled"/>
......@@ -29428,6 +29429,7 @@ from previous Chrome versions.
<int value="2067735898" label="WebVrAutopresentFromIntent:enabled"/>
<int value="2069999572"
label="AllowSignedHTTPExchangeCertsWithoutExtension:disabled"/>
<int value="2071229145" label="BloatedRendererDetection:enabled"/>
<int value="2071340353" label="progress-bar-completion"/>
<int value="2071461362" label="disable-credit-card-scan"/>
<int value="2075207488" label="AutomaticPasswordGeneration:disabled"/>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment