Hide space bar preview when space bar switcher is disabled.

Change-Id: I469197a4b3f55335eaee104177f0970cc904bb34
This commit is contained in:
satok 2010-11-18 20:48:01 +09:00
parent 3b776b7892
commit 279da1da91
2 changed files with 5 additions and 4 deletions

View file

@ -929,10 +929,11 @@ public class BaseKeyboardView extends View implements PointerTracker.UIProxy {
// the space key preview and 3) pointer moves off the space key to other letter key, we
// should hide the preview of the previous key.
final boolean hidePreviewOrShowSpaceKeyPreview = (tracker == null)
|| tracker.isSpaceKey(keyIndex) || tracker.isSpaceKey(oldKeyIndex);
|| (SubtypeSwitcher.USE_SPACEBAR_LANGUAGE_SWITCHER
&& SubtypeSwitcher.getInstance().needsToDisplayLanguage()
&& (tracker.isSpaceKey(keyIndex) || tracker.isSpaceKey(oldKeyIndex)));
// If key changed and preview is on or the key is space (language switch is enabled)
if (oldKeyIndex != keyIndex && (mShowPreview || (hidePreviewOrShowSpaceKeyPreview
&& SubtypeSwitcher.getInstance().needsToDisplayLanguage()))) {
if (oldKeyIndex != keyIndex && (mShowPreview || (hidePreviewOrShowSpaceKeyPreview))) {
if (keyIndex == NOT_A_KEY) {
mHandler.cancelPopupPreview();
mHandler.dismissPreview(mDelayAfterPreview);

View file

@ -74,7 +74,7 @@ public class SubtypeSwitcher {
// TODO: Cache the value
public boolean needsToDisplayLanguage() {
// TODO: Takes care of two-char locale such as "en" in addition to "en_US"
return !(getEnabledKeyboardLocaleCount() == 1 && getSystemLocale().getLanguage(
return !(getEnabledKeyboardLocaleCount() <= 1 && getSystemLocale().getLanguage(
).equalsIgnoreCase(getInputLocale().getLanguage()));
}