Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(50)

Side by Side Diff: ash/keyboard/keyboard_ui.cc

Issue 2074913005: Convert TrayAccessibility to wm common types (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@webnotification
Patch Set: rebase Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/keyboard/keyboard_ui.h" 5 #include "ash/keyboard/keyboard_ui.h"
6 6
7 #include "ash/common/accessibility_delegate.h" 7 #include "ash/common/accessibility_delegate.h"
8 #include "ash/common/system/accessibility_observer.h"
9 #include "ash/common/system/tray/wm_system_tray_notifier.h"
10 #include "ash/common/wm_shell.h"
8 #include "ash/keyboard/keyboard_ui_observer.h" 11 #include "ash/keyboard/keyboard_ui_observer.h"
9 #include "ash/shell.h"
10 #include "ash/system/tray/system_tray_notifier.h"
11 #include "ash/system/tray_accessibility.h" 12 #include "ash/system/tray_accessibility.h"
12 #include "base/memory/ptr_util.h" 13 #include "base/memory/ptr_util.h"
13 #include "ui/keyboard/keyboard_controller.h" 14 #include "ui/keyboard/keyboard_controller.h"
14 15
15 namespace ash { 16 namespace ash {
16 17
17 class KeyboardUIImpl : public KeyboardUI, public AccessibilityObserver { 18 class KeyboardUIImpl : public KeyboardUI, public AccessibilityObserver {
18 public: 19 public:
19 KeyboardUIImpl() { 20 KeyboardUIImpl() {
20 // The Shell may not exist in some unit tests. 21 WmShell::Get()->system_tray_notifier()->AddAccessibilityObserver(this);
21 Shell::GetInstance()->system_tray_notifier()->AddAccessibilityObserver(
22 this);
23 } 22 }
24 23
25 ~KeyboardUIImpl() override {} 24 ~KeyboardUIImpl() override {
25 if (WmShell::HasInstance() && WmShell::Get()->system_tray_notifier())
26 WmShell::Get()->system_tray_notifier()->RemoveAccessibilityObserver(this);
27 }
26 28
27 // KeyboardUI: 29 // KeyboardUI:
28 void Show() override { 30 void Show() override {
29 keyboard::KeyboardController::GetInstance()->ShowKeyboard(true); 31 keyboard::KeyboardController::GetInstance()->ShowKeyboard(true);
30 } 32 }
31 void Hide() override { 33 void Hide() override {
32 // Do nothing as this is called from ash::Shell, which also calls through 34 // Do nothing as this is called from ash::Shell, which also calls through
33 // to the appropriate keyboard functions. 35 // to the appropriate keyboard functions.
34 } 36 }
35 bool IsEnabled() override { 37 bool IsEnabled() override {
36 return Shell::GetInstance() 38 return WmShell::Get()
37 ->accessibility_delegate() 39 ->GetAccessibilityDelegate()
38 ->IsVirtualKeyboardEnabled(); 40 ->IsVirtualKeyboardEnabled();
39 } 41 }
40 42
41 // AccessibilityObserver: 43 // AccessibilityObserver:
42 void OnAccessibilityModeChanged( 44 void OnAccessibilityModeChanged(
43 ui::AccessibilityNotificationVisibility notify) override { 45 ui::AccessibilityNotificationVisibility notify) override {
44 FOR_EACH_OBSERVER(KeyboardUIObserver, *observers(), 46 FOR_EACH_OBSERVER(KeyboardUIObserver, *observers(),
45 OnKeyboardEnabledStateChanged(IsEnabled())); 47 OnKeyboardEnabledStateChanged(IsEnabled()));
46 } 48 }
47 49
(...skipping 12 matching lines...) Expand all
60 observers_.AddObserver(observer); 62 observers_.AddObserver(observer);
61 } 63 }
62 64
63 void KeyboardUI::RemoveObserver(KeyboardUIObserver* observer) { 65 void KeyboardUI::RemoveObserver(KeyboardUIObserver* observer) {
64 observers_.RemoveObserver(observer); 66 observers_.RemoveObserver(observer);
65 } 67 }
66 68
67 KeyboardUI::KeyboardUI() {} 69 KeyboardUI::KeyboardUI() {}
68 70
69 } // namespace ash 71 } // namespace ash
OLDNEW
« no previous file with comments | « ash/common/system/tray/wm_system_tray_notifier.cc ('k') | ash/magnifier/magnification_controller_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698