1 // Copyright 2014 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 "chromeos/ime/fake_xkeyboard.h"
8 namespace input_method {
10 FakeXKeyboard::FakeXKeyboard()
11 : set_current_keyboard_layout_by_name_count_(0),
12 caps_lock_is_enabled_(false),
13 num_lock_is_enabled_(false),
14 auto_repeat_is_enabled_(false) {
17 bool FakeXKeyboard::SetCurrentKeyboardLayoutByName(
18 const std::string& layout_name) {
19 ++set_current_keyboard_layout_by_name_count_;
20 last_layout_ = layout_name;
24 bool FakeXKeyboard::ReapplyCurrentKeyboardLayout() {
28 void FakeXKeyboard::ReapplyCurrentModifierLockStatus() {
31 void FakeXKeyboard::SetLockedModifiers(ModifierLockStatus new_caps_lock_status,
32 ModifierLockStatus new_num_lock_status) {
33 if (new_caps_lock_status != kDontChange) {
34 caps_lock_is_enabled_ =
35 (new_caps_lock_status == kEnableLock) ? true : false;
37 if (new_num_lock_status != kDontChange)
38 num_lock_is_enabled_ = (new_num_lock_status == kEnableLock) ? true : false;
41 void FakeXKeyboard::SetNumLockEnabled(bool enable_num_lock) {
42 num_lock_is_enabled_ = enable_num_lock;
45 void FakeXKeyboard::SetCapsLockEnabled(bool enable_caps_lock) {
46 caps_lock_is_enabled_ = enable_caps_lock;
49 bool FakeXKeyboard::NumLockIsEnabled() {
50 return num_lock_is_enabled_;
53 bool FakeXKeyboard::CapsLockIsEnabled() {
54 return caps_lock_is_enabled_;
57 unsigned int FakeXKeyboard::GetNumLockMask() {
61 void FakeXKeyboard::GetLockedModifiers(bool* out_caps_lock_enabled,
62 bool* out_num_lock_enabled) {
63 *out_caps_lock_enabled = caps_lock_is_enabled_;
64 *out_num_lock_enabled = num_lock_is_enabled_;
67 bool FakeXKeyboard::SetAutoRepeatEnabled(bool enabled) {
68 auto_repeat_is_enabled_ = enabled;
72 bool FakeXKeyboard::SetAutoRepeatRate(const AutoRepeatRate& rate) {
73 last_auto_repeat_rate_ = rate;
77 } // namespace input_method
78 } // namespace chromeos