1 // Copyright 2018 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/test_native_theme.h"
6
7 namespace ui {
8
TestNativeTheme()9 TestNativeTheme::TestNativeTheme() : NativeTheme(false) {}
10 TestNativeTheme::~TestNativeTheme() = default;
11
GetSystemColor(ColorId color_id,ColorScheme color_scheme) const12 SkColor TestNativeTheme::GetSystemColor(ColorId color_id,
13 ColorScheme color_scheme) const {
14 return SK_ColorRED;
15 }
16
GetPartSize(Part part,State state,const ExtraParams & extra) const17 gfx::Size TestNativeTheme::GetPartSize(Part part,
18 State state,
19 const ExtraParams& extra) const {
20 return gfx::Size();
21 }
22
Paint(cc::PaintCanvas * canvas,Part part,State state,const gfx::Rect & rect,const ExtraParams & extra,ColorScheme color_scheme) const23 void TestNativeTheme::Paint(cc::PaintCanvas* canvas,
24 Part part,
25 State state,
26 const gfx::Rect& rect,
27 const ExtraParams& extra,
28 ColorScheme color_scheme) const {}
29
SupportsNinePatch(Part part) const30 bool TestNativeTheme::SupportsNinePatch(Part part) const {
31 return false;
32 }
33
GetNinePatchCanvasSize(Part part) const34 gfx::Size TestNativeTheme::GetNinePatchCanvasSize(Part part) const {
35 return gfx::Size();
36 }
37
GetNinePatchAperture(Part part) const38 gfx::Rect TestNativeTheme::GetNinePatchAperture(Part part) const {
39 return gfx::Rect();
40 }
41
UsesHighContrastColors() const42 bool TestNativeTheme::UsesHighContrastColors() const {
43 return high_contrast_;
44 }
45
ShouldUseDarkColors() const46 bool TestNativeTheme::ShouldUseDarkColors() const {
47 return dark_mode_;
48 }
49
GetPreferredColorScheme() const50 NativeTheme::PreferredColorScheme TestNativeTheme::GetPreferredColorScheme()
51 const {
52 return CalculatePreferredColorScheme();
53 }
54
GetDefaultSystemColorScheme() const55 NativeTheme::ColorScheme TestNativeTheme::GetDefaultSystemColorScheme() const {
56 if (is_platform_high_contrast_)
57 return ColorScheme::kPlatformHighContrast;
58 return NativeTheme::GetDefaultSystemColorScheme();
59 }
60
AddColorSchemeNativeThemeObserver(NativeTheme * theme_to_update)61 void TestNativeTheme::AddColorSchemeNativeThemeObserver(
62 NativeTheme* theme_to_update) {
63 color_scheme_observer_ =
64 std::make_unique<ui::NativeTheme::ColorSchemeNativeThemeObserver>(
65 theme_to_update);
66 AddObserver(color_scheme_observer_.get());
67 }
68
69 } // namespace ui
70