1 // Copyright 2014 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 "ui/native_theme/native_theme_features.h" 6 7 #include "build/build_config.h" 8 #include "build/chromeos_buildflags.h" 9 10 namespace features { 11 12 #if defined(OS_ANDROID) || defined(OS_CHROMEOS) || defined(OS_FUCHSIA) || \ 13 BUILDFLAG(IS_LACROS) 14 constexpr base::FeatureState kOverlayScrollbarFeatureState = 15 base::FEATURE_ENABLED_BY_DEFAULT; 16 #else 17 constexpr base::FeatureState kOverlayScrollbarFeatureState = 18 base::FEATURE_DISABLED_BY_DEFAULT; 19 #endif 20 21 // Enables or disables overlay scrollbars in Blink (i.e. web content) on Aura 22 // or Linux. The status of native UI overlay scrollbars is determined in 23 // PlatformStyle::CreateScrollBar. Does nothing on Mac. 24 const base::Feature kOverlayScrollbar{"OverlayScrollbar", 25 kOverlayScrollbarFeatureState}; 26 27 // Enables will flash all scrollbars in page after any scroll update. 28 const base::Feature kOverlayScrollbarFlashAfterAnyScrollUpdate{ 29 "OverlayScrollbarFlashAfterAnyScrollUpdate", kOverlayScrollbarFeatureState}; 30 31 } // namespace features 32 33 namespace ui { 34 IsOverlayScrollbarEnabled()35bool IsOverlayScrollbarEnabled() { 36 return base::FeatureList::IsEnabled(features::kOverlayScrollbar); 37 } 38 OverlayScrollbarFlashAfterAnyScrollUpdate()39bool OverlayScrollbarFlashAfterAnyScrollUpdate() { 40 return base::FeatureList::IsEnabled( 41 features::kOverlayScrollbarFlashAfterAnyScrollUpdate); 42 } 43 44 } // namespace ui 45