OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2015 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 <string> | |
6 | |
7 #include "base/command_line.h" | |
8 #include "base/logging.h" | |
9 #include "ui/base/material_design/material_design_controller.h" | |
10 #include "ui/base/ui_base_switches.h" | |
11 | |
12 namespace ui { | |
13 | |
14 bool MaterialDesignController::is_look_and_feel_initialized_ = false; | |
15 | |
16 MaterialDesignController::LookAndFeel MaterialDesignController::look_and_feel_ = | |
17 MaterialDesignController::LookAndFeel::CLASSIC; | |
18 | |
19 MaterialDesignController::LookAndFeel | |
20 MaterialDesignController::GetLookAndFeel() { | |
21 if (!is_look_and_feel_initialized_) | |
22 InitializeLookAndFeel(); | |
23 CHECK(is_look_and_feel_initialized_); | |
24 return look_and_feel_; | |
25 } | |
26 | |
27 void MaterialDesignController::InitializeLookAndFeel() { | |
28 #if !defined(ENABLE_TOPCHROME_MD) | |
29 SetLookAndFeel(LookAndFeel::CLASSIC); | |
30 #else | |
31 const std::string switch_value = | |
32 base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII( | |
33 switches::kTopChromeMD); | |
34 | |
35 if (switch_value == switches::kTopChromeMDEnabled) { | |
36 SetLookAndFeel(LookAndFeel::MATERIAL); | |
37 } else if (switch_value == switches::kTopChromeMDHybridEnabled) { | |
38 SetLookAndFeel(LookAndFeel::HYBRID); | |
39 } else if (switch_value == switches::kTopChromeMDDisabled || | |
40 switch_value == switches::kTopChromeMDDefault) { | |
41 SetLookAndFeel(LookAndFeel::CLASSIC); | |
42 } else { | |
43 NOTREACHED(); | |
tdanderson
2015/06/18 20:54:23
Consider including a message here (NOTREACHED() <<
bruthig
2015/06/22 18:51:11
Done.
| |
44 SetLookAndFeel(LookAndFeel::CLASSIC); | |
45 } | |
46 #endif // !defined(ENABLE_TOPCHROME_MD) | |
47 } | |
48 | |
49 void MaterialDesignController::UninitializeLookAndFeel() { | |
50 MaterialDesignController::SetLookAndFeel( | |
51 MaterialDesignController::LookAndFeel::CLASSIC); | |
52 is_look_and_feel_initialized_ = false; | |
53 } | |
54 | |
55 void MaterialDesignController::SetLookAndFeel( | |
56 MaterialDesignController::LookAndFeel look_and_feel) { | |
57 look_and_feel_ = look_and_feel; | |
58 is_look_and_feel_initialized_ = true; | |
59 } | |
60 | |
61 } // namespace ui | |
OLD | NEW |