Index: chrome/browser/chromeos/input_method/xkeyboard.cc |
diff --git a/chrome/browser/chromeos/input_method/xkeyboard.cc b/chrome/browser/chromeos/input_method/xkeyboard.cc |
index a810f3044d5c33180fad0cb99aef195522990c6c..0050a5155ce9a4967c2a793d04ddc0828100d8d3 100644 |
--- a/chrome/browser/chromeos/input_method/xkeyboard.cc |
+++ b/chrome/browser/chromeos/input_method/xkeyboard.cc |
@@ -355,7 +355,6 @@ bool XKeyboard::SetAutoRepeatEnabled(bool enabled) { |
// static |
bool XKeyboard::SetAutoRepeatRate(const AutoRepeatRate& rate) { |
- // TODO(yusukes): write auto tests for the function. |
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |
DLOG(INFO) << "Set auto-repeat rate to: " |
<< rate.initial_delay_in_ms << " ms delay, " |
@@ -369,6 +368,20 @@ bool XKeyboard::SetAutoRepeatRate(const AutoRepeatRate& rate) { |
return true; |
} |
+// static |
+bool XKeyboard::GetAutoRepeatEnabled() { |
+ XKeyboardState state = {}; |
+ XGetKeyboardControl(ui::GetXDisplay(), &state); |
+ return state.global_auto_repeat != AutoRepeatModeOff; |
+} |
+ |
+// static |
+bool XKeyboard::GetAutoRepeatRate(AutoRepeatRate* out_rate) { |
+ return XkbGetAutoRepeatRate(ui::GetXDisplay(), XkbUseCoreKbd, |
+ &(out_rate->initial_delay_in_ms), |
+ &(out_rate->repeat_interval_in_ms)) == True; |
+} |
+ |
void XKeyboard::SetLockedModifiers(ModifierLockStatus new_caps_lock_status, |
ModifierLockStatus new_num_lock_status) { |
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); |