OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "chrome/browser/managed_mode/managed_user_theme.h" | |
6 | |
7 #include "chrome/browser/themes/theme_properties.h" | |
8 #include "grit/theme_resources.h" | |
9 #include "ui/base/resource/resource_bundle.h" | |
10 #include "ui/gfx/image/image.h" | |
11 | |
12 namespace { | |
13 | |
14 const SkColor kDefaultColorFrameManagedUser = SkColorSetRGB(165, 197, 225); | |
15 const SkColor kDefaultColorFrameManagedUserInactive = | |
16 SkColorSetRGB(180, 225, 247); | |
17 const SkColor kDefaultColorManagedUserLabelBackground = | |
18 SkColorSetRGB(108, 167, 210); | |
19 | |
20 // Map resource ids to the managed user resource ids. | |
21 int MapToManagedUserResourceIds(int id) { | |
22 switch (id) { | |
23 case IDR_THEME_FRAME: | |
24 #if defined(USE_ASH) && !defined(OS_CHROMEOS) | |
25 case IDR_THEME_FRAME_DESKTOP: | |
26 #endif | |
27 return IDR_MANAGED_USER_THEME_FRAME; | |
28 case IDR_THEME_FRAME_INACTIVE: | |
29 #if defined(USE_ASH) && !defined(OS_CHROMEOS) | |
30 case IDR_THEME_FRAME_INACTIVE_DESKTOP: | |
31 #endif | |
32 return IDR_MANAGED_USER_THEME_FRAME_INACTIVE; | |
33 case IDR_THEME_TAB_BACKGROUND: | |
34 case IDR_THEME_TAB_BACKGROUND_V: | |
35 #if defined(USE_ASH) && !defined(OS_CHROMEOS) | |
36 case IDR_THEME_TAB_BACKGROUND_DESKTOP: | |
37 #endif | |
38 return IDR_MANAGED_USER_THEME_TAB_BACKGROUND; | |
39 } | |
40 return id; | |
41 } | |
42 | |
43 } // namespace | |
44 | |
45 ManagedUserTheme::ManagedUserTheme() | |
46 : CustomThemeSupplier(SUPERVISED_USER_THEME) {} | |
47 | |
48 ManagedUserTheme::~ManagedUserTheme() {} | |
49 | |
50 bool ManagedUserTheme::GetColor(int id, SkColor* color) const { | |
51 switch (id) { | |
52 case ThemeProperties::COLOR_FRAME: | |
53 *color = kDefaultColorFrameManagedUser; | |
54 return true; | |
55 case ThemeProperties::COLOR_FRAME_INACTIVE: | |
56 *color = kDefaultColorFrameManagedUserInactive; | |
57 return true; | |
58 case ThemeProperties::COLOR_SUPERVISED_USER_LABEL: | |
59 *color = SK_ColorWHITE; | |
60 return true; | |
61 case ThemeProperties::COLOR_SUPERVISED_USER_LABEL_BACKGROUND: | |
62 *color = kDefaultColorManagedUserLabelBackground; | |
63 return true; | |
64 } | |
65 return false; | |
66 } | |
67 | |
68 gfx::Image ManagedUserTheme::GetImageNamed(int id) { | |
69 if (!HasCustomImage(id)) | |
70 return gfx::Image(); | |
71 | |
72 id = MapToManagedUserResourceIds(id); | |
73 return ResourceBundle::GetSharedInstance().GetNativeImageNamed(id); | |
74 } | |
75 | |
76 bool ManagedUserTheme::HasCustomImage(int id) const { | |
77 return id != MapToManagedUserResourceIds(id); | |
78 } | |
OLD | NEW |