Skip to content
Snippets Groups Projects
Commit 0351b816 authored by Tadashi G. Takaoka's avatar Tadashi G. Takaoka
Browse files

Hide voice input key from URI, Email, Number, and Phone layout

Bug: 15709298
Change-Id: I05d9433d4e1c2cc475a2136cc97bc32bde6fc745
parent 4c45fff2
No related branches found
No related tags found
No related merge requests found
...@@ -41,6 +41,7 @@ public final class InputAttributes { ...@@ -41,6 +41,7 @@ public final class InputAttributes {
final public boolean mShouldShowSuggestions; final public boolean mShouldShowSuggestions;
final public boolean mApplicationSpecifiedCompletionOn; final public boolean mApplicationSpecifiedCompletionOn;
final public boolean mShouldInsertSpacesAutomatically; final public boolean mShouldInsertSpacesAutomatically;
final public boolean mShouldShowVoiceInputKey;
final private int mInputType; final private int mInputType;
final private EditorInfo mEditorInfo; final private EditorInfo mEditorInfo;
final private String mPackageNameForPrivateImeOptions; final private String mPackageNameForPrivateImeOptions;
...@@ -74,6 +75,7 @@ public final class InputAttributes { ...@@ -74,6 +75,7 @@ public final class InputAttributes {
mInputTypeNoAutoCorrect = false; mInputTypeNoAutoCorrect = false;
mApplicationSpecifiedCompletionOn = false; mApplicationSpecifiedCompletionOn = false;
mShouldInsertSpacesAutomatically = false; mShouldInsertSpacesAutomatically = false;
mShouldShowVoiceInputKey = false;
return; return;
} }
// inputClass == InputType.TYPE_CLASS_TEXT // inputClass == InputType.TYPE_CLASS_TEXT
...@@ -99,6 +101,12 @@ public final class InputAttributes { ...@@ -99,6 +101,12 @@ public final class InputAttributes {
mShouldInsertSpacesAutomatically = InputTypeUtils.isAutoSpaceFriendlyType(inputType); mShouldInsertSpacesAutomatically = InputTypeUtils.isAutoSpaceFriendlyType(inputType);
final boolean noMicrophone = mIsPasswordField
|| InputType.TYPE_TEXT_VARIATION_EMAIL_ADDRESS == variation
|| InputType.TYPE_TEXT_VARIATION_URI == variation
|| hasNoMicrophoneKeyOption();
mShouldShowVoiceInputKey = !noMicrophone;
// If it's a browser edit field and auto correct is not ON explicitly, then // If it's a browser edit field and auto correct is not ON explicitly, then
// disable auto correction, but keep suggestions on. // disable auto correction, but keep suggestions on.
// If NO_SUGGESTIONS is set, don't do prediction. // If NO_SUGGESTIONS is set, don't do prediction.
...@@ -119,7 +127,7 @@ public final class InputAttributes { ...@@ -119,7 +127,7 @@ public final class InputAttributes {
return editorInfo.inputType == mInputType; return editorInfo.inputType == mInputType;
} }
public boolean hasNoMicrophoneKeyOption() { private boolean hasNoMicrophoneKeyOption() {
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")
final boolean deprecatedNoMicrophone = InputAttributes.inPrivateImeOptions( final boolean deprecatedNoMicrophone = InputAttributes.inPrivateImeOptions(
null, NO_MICROPHONE_COMPAT, mEditorInfo); null, NO_MICROPHONE_COMPAT, mEditorInfo);
......
...@@ -125,8 +125,7 @@ public final class SettingsValues { ...@@ -125,8 +125,7 @@ public final class SettingsValues {
mSlidingKeyInputPreviewEnabled = prefs.getBoolean( mSlidingKeyInputPreviewEnabled = prefs.getBoolean(
DebugSettings.PREF_SLIDING_KEY_INPUT_PREVIEW, true); DebugSettings.PREF_SLIDING_KEY_INPUT_PREVIEW, true);
mShowsVoiceInputKey = needsToShowVoiceInputKey(prefs, res) mShowsVoiceInputKey = needsToShowVoiceInputKey(prefs, res)
&& !mInputAttributes.mIsPasswordField && mInputAttributes.mShouldShowVoiceInputKey
&& !mInputAttributes.hasNoMicrophoneKeyOption()
&& SubtypeSwitcher.getInstance().isShortcutImeEnabled(); && SubtypeSwitcher.getInstance().isShortcutImeEnabled();
final String autoCorrectionThresholdRawValue = prefs.getString( final String autoCorrectionThresholdRawValue = prefs.getString(
Settings.PREF_AUTO_CORRECTION_THRESHOLD, Settings.PREF_AUTO_CORRECTION_THRESHOLD,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment