Revert of Fix missing GN dependencies. (patchset #4 id:60001 of https://codereview...
[chromium-blink-merge.git] / ui / base / ime / mock_input_method.cc
blob1ea12039484fb3edd0a8b7c181d7d6918876f9d2
1 // Copyright (c) 2012 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.
5 #include "ui/base/ime/mock_input_method.h"
7 #include "ui/base/ime/text_input_focus_manager.h"
8 #include "ui/base/ui_base_switches_util.h"
10 namespace ui {
12 MockInputMethod::MockInputMethod(internal::InputMethodDelegate* delegate)
13 : text_input_client_(NULL) {
16 MockInputMethod::~MockInputMethod() {
19 void MockInputMethod::SetDelegate(internal::InputMethodDelegate* delegate) {
22 void MockInputMethod::SetFocusedTextInputClient(TextInputClient* client) {
23 if (switches::IsTextInputFocusManagerEnabled())
24 return;
26 if (text_input_client_ == client)
27 return;
28 text_input_client_ = client;
29 if (client)
30 OnTextInputTypeChanged(client);
33 void MockInputMethod::DetachTextInputClient(TextInputClient* client) {
34 if (text_input_client_ == client) {
35 text_input_client_ = NULL;
39 TextInputClient* MockInputMethod::GetTextInputClient() const {
40 if (switches::IsTextInputFocusManagerEnabled())
41 return TextInputFocusManager::GetInstance()->GetFocusedTextInputClient();
43 return text_input_client_;
46 bool MockInputMethod::DispatchKeyEvent(const ui::KeyEvent& event) {
47 return false;
50 void MockInputMethod::OnFocus() {
51 FOR_EACH_OBSERVER(InputMethodObserver, observer_list_, OnFocus());
54 void MockInputMethod::OnBlur() {
55 FOR_EACH_OBSERVER(InputMethodObserver, observer_list_, OnBlur());
58 bool MockInputMethod::OnUntranslatedIMEMessage(const base::NativeEvent& event,
59 NativeEventResult* result) {
60 if (result)
61 *result = NativeEventResult();
62 return false;
65 void MockInputMethod::OnTextInputTypeChanged(const TextInputClient* client) {
66 FOR_EACH_OBSERVER(InputMethodObserver,
67 observer_list_,
68 OnTextInputTypeChanged(client));
69 FOR_EACH_OBSERVER(InputMethodObserver,
70 observer_list_,
71 OnTextInputStateChanged(client));
74 void MockInputMethod::OnCaretBoundsChanged(const TextInputClient* client) {
75 FOR_EACH_OBSERVER(InputMethodObserver,
76 observer_list_,
77 OnCaretBoundsChanged(client));
80 void MockInputMethod::CancelComposition(const TextInputClient* client) {
83 void MockInputMethod::OnInputLocaleChanged() {
86 std::string MockInputMethod::GetInputLocale() {
87 return "";
90 bool MockInputMethod::IsActive() {
91 return true;
94 TextInputType MockInputMethod::GetTextInputType() const {
95 return TEXT_INPUT_TYPE_NONE;
98 TextInputMode MockInputMethod::GetTextInputMode() const {
99 return TEXT_INPUT_MODE_DEFAULT;
102 int MockInputMethod::GetTextInputFlags() const {
103 return 0;
106 bool MockInputMethod::CanComposeInline() const {
107 return true;
110 bool MockInputMethod::IsCandidatePopupOpen() const {
111 return false;
114 void MockInputMethod::ShowImeIfNeeded() {
115 FOR_EACH_OBSERVER(InputMethodObserver, observer_list_, OnShowImeIfNeeded());
118 void MockInputMethod::AddObserver(InputMethodObserver* observer) {
119 observer_list_.AddObserver(observer);
122 void MockInputMethod::RemoveObserver(InputMethodObserver* observer) {
123 observer_list_.RemoveObserver(observer);
126 } // namespace ui