diff options
author | 2014-06-05 18:09:24 +0900 | |
---|---|---|
committer | 2014-06-06 13:18:41 +0900 | |
commit | aa4b2c71270576f25e7c80a4b63a1956cec5f4e2 (patch) | |
tree | e90445063c5c01d05b80bf5b70efc3bdb79ebb86 /java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java | |
parent | 3ca65c8fd56724a7b4b3440bccf613e5a1a17513 (diff) | |
download | latinime-aa4b2c71270576f25e7c80a4b63a1956cec5f4e2.tar.gz latinime-aa4b2c71270576f25e7c80a4b63a1956cec5f4e2.tar.xz latinime-aa4b2c71270576f25e7c80a4b63a1956cec5f4e2.zip |
Always update voice key visibility
Bug: 15128166
Change-Id: Ie15724c323efa3b102f6aebddc3bda210aad1727
Diffstat (limited to 'java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java')
-rw-r--r-- | java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java | 40 |
1 files changed, 17 insertions, 23 deletions
diff --git a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java index 4a5a7f004..99d1aa753 100644 --- a/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java +++ b/java/src/com/android/inputmethod/latin/suggestions/SuggestionStripView.java @@ -48,6 +48,7 @@ import com.android.inputmethod.latin.R; import com.android.inputmethod.latin.SuggestedWords; import com.android.inputmethod.latin.SuggestedWords.SuggestedWordInfo; import com.android.inputmethod.latin.settings.Settings; +import com.android.inputmethod.latin.settings.SettingsValues; import com.android.inputmethod.latin.suggestions.MoreSuggestionsView.MoreSuggestionsListener; import com.android.inputmethod.latin.utils.ImportantNoticeUtils; @@ -89,19 +90,17 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick private static class StripVisibilityGroup { private final View mSuggestionStripView; private final View mSuggestionsStrip; - private final View mVoiceKey; private final View mAddToDictionaryStrip; private final View mImportantNoticeStrip; public StripVisibilityGroup(final View suggestionStripView, - final ViewGroup suggestionsStrip, final ImageButton voiceKey, - final ViewGroup addToDictionaryStrip, final View importantNoticeStrip) { + final ViewGroup suggestionsStrip, final ViewGroup addToDictionaryStrip, + final View importantNoticeStrip) { mSuggestionStripView = suggestionStripView; mSuggestionsStrip = suggestionsStrip; - mVoiceKey = voiceKey; mAddToDictionaryStrip = addToDictionaryStrip; mImportantNoticeStrip = importantNoticeStrip; - showSuggestionsStrip(false /* voiceKeyEnabled */); + showSuggestionsStrip(); } public void setLayoutDirection(final boolean isRtlLanguage) { @@ -113,23 +112,20 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick ViewCompat.setLayoutDirection(mImportantNoticeStrip, layoutDirection); } - public void showSuggestionsStrip(final boolean enableVoiceKey) { + public void showSuggestionsStrip() { mSuggestionsStrip.setVisibility(VISIBLE); - mVoiceKey.setVisibility(enableVoiceKey ? VISIBLE : INVISIBLE); mAddToDictionaryStrip.setVisibility(INVISIBLE); mImportantNoticeStrip.setVisibility(INVISIBLE); } public void showAddToDictionaryStrip() { mSuggestionsStrip.setVisibility(INVISIBLE); - mVoiceKey.setVisibility(INVISIBLE); mAddToDictionaryStrip.setVisibility(VISIBLE); mImportantNoticeStrip.setVisibility(INVISIBLE); } - public void showImportantNoticeStrip(final boolean enableVoiceKey) { + public void showImportantNoticeStrip() { mSuggestionsStrip.setVisibility(INVISIBLE); - mVoiceKey.setVisibility(enableVoiceKey ? VISIBLE : INVISIBLE); mAddToDictionaryStrip.setVisibility(INVISIBLE); mImportantNoticeStrip.setVisibility(VISIBLE); } @@ -159,7 +155,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick mVoiceKey = (ImageButton)findViewById(R.id.suggestions_strip_voice_key); mAddToDictionaryStrip = (ViewGroup)findViewById(R.id.add_to_dictionary_strip); mImportantNoticeStrip = findViewById(R.id.important_notice_strip); - mStripVisibilityGroup = new StripVisibilityGroup(this, mSuggestionsStrip, mVoiceKey, + mStripVisibilityGroup = new StripVisibilityGroup(this, mSuggestionsStrip, mAddToDictionaryStrip, mImportantNoticeStrip); for (int pos = 0; pos < SuggestedWords.MAX_SUGGESTIONS; pos++) { @@ -207,15 +203,13 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick mMainKeyboardView = (MainKeyboardView)inputView.findViewById(R.id.keyboard_view); } - private boolean isVoiceKeyEnabled() { - if (mMainKeyboardView == null) { - return false; - } - final Keyboard keyboard = mMainKeyboardView.getKeyboard(); - if (keyboard == null) { - return false; - } - return keyboard.mId.mHasShortcutKey; + public void updateVisibility(final boolean shouldBeVisible, final boolean isFullscreenMode) { + final int visibility = shouldBeVisible ? VISIBLE : (isFullscreenMode ? GONE : INVISIBLE); + setVisibility(visibility); + final SettingsValues currentSettingsValues = Settings.getInstance().getCurrent(); + final boolean shouldShowVoiceKey = (currentSettingsValues != null) + && currentSettingsValues.mShowsVoiceInputKey; + mVoiceKey.setVisibility(shouldShowVoiceKey ? VISIBLE : INVISIBLE); } public void setSuggestions(final SuggestedWords suggestedWords, final boolean isRtlLanguage) { @@ -224,7 +218,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick mSuggestedWords = suggestedWords; mSuggestionsCountInStrip = mLayoutHelper.layoutAndReturnSuggestionCountInStrip( mSuggestedWords, mSuggestionsStrip, this); - mStripVisibilityGroup.showSuggestionsStrip(isVoiceKeyEnabled()); + mStripVisibilityGroup.showSuggestionsStrip(); } public int setMoreSuggestionsHeight(final int remainingHeight) { @@ -271,7 +265,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick dismissMoreSuggestionsPanel(); } mLayoutHelper.layoutImportantNotice(mImportantNoticeStrip, importantNoticeTitle); - mStripVisibilityGroup.showImportantNoticeStrip(isVoiceKeyEnabled()); + mStripVisibilityGroup.showImportantNoticeStrip(); mImportantNoticeStrip.setOnClickListener(this); return true; } @@ -279,7 +273,7 @@ public final class SuggestionStripView extends RelativeLayout implements OnClick public void clear() { mSuggestionsStrip.removeAllViews(); removeAllDebugInfoViews(); - mStripVisibilityGroup.showSuggestionsStrip(false /* enableVoiceKey */); + mStripVisibilityGroup.showSuggestionsStrip(); dismissMoreSuggestionsPanel(); } |