Update shift state when alphabet keyboard has been set

Bug: 5857492
Change-Id: I5ef78af21a76e8cf645e223d1ffa6212690bb1eb
This commit is contained in:
Tadashi G. Takaoka 2012-01-13 20:15:14 +09:00
parent 327c6828a5
commit c88026e1df
3 changed files with 17 additions and 1 deletions

View file

@ -324,6 +324,12 @@ public class KeyboardSwitcher implements KeyboardState.SwitchActions,
setKeyboard(mKeyboardSet.getSymbolsShiftedKeyboard());
}
// Implements {@link KeyboardState.SwitchActions}.
@Override
public void requestUpdatingShiftState() {
mState.onUpdateShiftState(mInputMethodService.getCurrentAutoCapsState());
}
public boolean isInMomentarySwitchState() {
return mState.isInMomentarySwitchState();
}

View file

@ -53,6 +53,11 @@ public class KeyboardState {
public void setSymbolsKeyboard();
public void setSymbolsShiftedKeyboard();
/**
* Request to call back {@link KeyboardState#onUpdateShiftState(boolean)}.
*/
public void requestUpdatingShiftState();
}
private KeyboardShiftState mKeyboardShiftState = new KeyboardShiftState();
@ -212,6 +217,7 @@ public class KeyboardState {
mSwitchState = SWITCH_STATE_ALPHA;
setShiftLocked(mPrevMainKeyboardWasShiftLocked);
mPrevMainKeyboardWasShiftLocked = false;
mSwitchActions.requestUpdatingShiftState();
}
private void setSymbolsKeyboard() {

View file

@ -71,6 +71,11 @@ public class KeyboardStateTests extends AndroidTestCase {
mLayout = SYMBOLS_SHIFTED;
}
@Override
public void requestUpdatingShiftState() {
mState.onUpdateShiftState(mAutoCaps);
}
public void toggleCapsLock() {
mState.onToggleCapsLock();
}
@ -111,7 +116,6 @@ public class KeyboardStateTests extends AndroidTestCase {
public void onCancelInput(boolean isSinglePointer) {
mState.onCancelInput(isSinglePointer);
}
}
private MockKeyboardSwitcher mSwitcher;