OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ash/mus/keyboard_ui_mus.h" | 5 #include "ash/mus/keyboard_ui_mus.h" |
6 | 6 |
7 #include "ash/keyboard/keyboard_ui_observer.h" | 7 #include "ash/keyboard/keyboard_ui_observer.h" |
8 #include "ash/shell.h" | 8 #include "ash/shell.h" |
9 #include "ash/shell_delegate.h" | 9 #include "ash/shell_delegate.h" |
| 10 #include "base/memory/ptr_util.h" |
10 #include "mojo/shell/public/cpp/connector.h" | 11 #include "mojo/shell/public/cpp/connector.h" |
11 | 12 |
12 namespace ash { | 13 namespace ash { |
13 | 14 |
14 KeyboardUIMus::KeyboardUIMus(mojo::Connector* connector) | 15 KeyboardUIMus::KeyboardUIMus(mojo::Connector* connector) |
15 : is_enabled_(false), observer_binding_(this) { | 16 : is_enabled_(false), observer_binding_(this) { |
16 // TODO(sky): should be something like mojo:keyboard, but need mapping. | 17 // TODO(sky): should be something like mojo:keyboard, but need mapping. |
17 connector->ConnectToInterface("exe:chrome", &keyboard_); | 18 connector->ConnectToInterface("exe:chrome", &keyboard_); |
18 keyboard_->AddObserver(observer_binding_.CreateInterfacePtrAndBind()); | 19 keyboard_->AddObserver(observer_binding_.CreateInterfacePtrAndBind()); |
19 } | 20 } |
20 | 21 |
21 KeyboardUIMus::~KeyboardUIMus() {} | 22 KeyboardUIMus::~KeyboardUIMus() {} |
22 | 23 |
23 // static | 24 // static |
24 scoped_ptr<KeyboardUI> KeyboardUIMus::Create(mojo::Connector* connector) { | 25 std::unique_ptr<KeyboardUI> KeyboardUIMus::Create(mojo::Connector* connector) { |
25 return make_scoped_ptr(new KeyboardUIMus(connector)); | 26 return base::WrapUnique(new KeyboardUIMus(connector)); |
26 } | 27 } |
27 | 28 |
28 void KeyboardUIMus::Hide() { | 29 void KeyboardUIMus::Hide() { |
29 keyboard_->Hide(); | 30 keyboard_->Hide(); |
30 } | 31 } |
31 | 32 |
32 void KeyboardUIMus::Show() { | 33 void KeyboardUIMus::Show() { |
33 keyboard_->Show(); | 34 keyboard_->Show(); |
34 } | 35 } |
35 | 36 |
36 bool KeyboardUIMus::IsEnabled() { | 37 bool KeyboardUIMus::IsEnabled() { |
37 return is_enabled_; | 38 return is_enabled_; |
38 } | 39 } |
39 | 40 |
40 void KeyboardUIMus::OnKeyboardStateChanged(bool is_enabled, | 41 void KeyboardUIMus::OnKeyboardStateChanged(bool is_enabled, |
41 bool is_visible, | 42 bool is_visible, |
42 uint64_t display_id, | 43 uint64_t display_id, |
43 mojo::RectPtr bounds) { | 44 mojo::RectPtr bounds) { |
44 if (is_enabled_ == is_enabled) | 45 if (is_enabled_ == is_enabled) |
45 return; | 46 return; |
46 | 47 |
47 is_enabled_ = is_enabled; | 48 is_enabled_ = is_enabled; |
48 FOR_EACH_OBSERVER(KeyboardUIObserver, *observers(), | 49 FOR_EACH_OBSERVER(KeyboardUIObserver, *observers(), |
49 OnKeyboardEnabledStateChanged(is_enabled)); | 50 OnKeyboardEnabledStateChanged(is_enabled)); |
50 } | 51 } |
51 | 52 |
52 } // namespace ash | 53 } // namespace ash |
OLD | NEW |