Index: content/browser/site_per_process_browsertest.cc |
diff --git a/content/browser/site_per_process_browsertest.cc b/content/browser/site_per_process_browsertest.cc |
index cb7a479d278c1781ffa6b7d373b786eb0e27a4cf..4f60233784ceb6f27994cd80b96765407c8c9f00 100644 |
--- a/content/browser/site_per_process_browsertest.cc |
+++ b/content/browser/site_per_process_browsertest.cc |
@@ -15,6 +15,7 @@ |
#include "base/bind.h" |
#include "base/callback.h" |
#include "base/command_line.h" |
+#include "base/feature_list.h" |
#include "base/location.h" |
#include "base/memory/ptr_util.h" |
#include "base/path_service.h" |
@@ -87,7 +88,7 @@ |
#include "ui/events/event_utils.h" |
#include "ui/gfx/geometry/point.h" |
#include "ui/latency/latency_info.h" |
-#include "ui/native_theme/native_theme_switches.h" |
+#include "ui/native_theme/native_theme_features.h" |
#if defined(USE_AURA) |
#include "content/browser/renderer_host/render_widget_host_view_aura.h" |
@@ -619,14 +620,33 @@ std::string SitePerProcessBrowserTest::DepictFrameTree(FrameTreeNode* node) { |
void SitePerProcessBrowserTest::SetUpCommandLine( |
base::CommandLine* command_line) { |
IsolateAllSitesForTesting(command_line); |
+} |
+ |
+void SitePerProcessBrowserTest::SetUpOnMainThread() { |
#if !defined(OS_ANDROID) |
// TODO(bokan): Needed for scrollability check in |
// FrameOwnerPropertiesPropagationScrolling. crbug.com/662196. |
- command_line->AppendSwitch(switches::kDisableOverlayScrollbar); |
+ base::FeatureList* existing_feature_list = base::FeatureList::GetInstance(); |
+ if (existing_feature_list) { |
+ std::string enabled_features; |
+ std::string disabled_features; |
+ base::FeatureList::GetInstance()->GetFeatureOverrides(&enabled_features, |
+ &disabled_features); |
+ std::string overlay_scrollbar_name = |
+ std::string(features::kOverlayScrollbar.name); |
+ if (disabled_features.find(overlay_scrollbar_name) == std::string::npos) |
+ disabled_features += "," + overlay_scrollbar_name; |
+ |
+ std::size_t index = enabled_features.find(overlay_scrollbar_name); |
+ if (index != std::string::npos) |
+ enabled_features.replace(index, overlay_scrollbar_name.size(), ""); |
+ |
+ feature_list_.InitFromCommandLine(enabled_features, disabled_features); |
dgozman
2017/04/13 17:33:28
Let's add a method similar to ScopedFeatureList::I
chaopeng
2017/04/13 19:45:32
Done.
|
+ } else { |
+ feature_list_.InitAndDisableFeature(features::kOverlayScrollbar); |
+ } |
#endif |
-}; |
-void SitePerProcessBrowserTest::SetUpOnMainThread() { |
host_resolver()->AddRule("*", "127.0.0.1"); |
SetupCrossSiteRedirector(embedded_test_server()); |
ASSERT_TRUE(embedded_test_server()->Start()); |