fix issues with looking up suggestions when it should not happen

was introduced in e8e4354600
This commit is contained in:
Helium314 2024-01-21 19:02:40 +01:00
parent dbb966f7af
commit 8601b841f2
2 changed files with 8 additions and 2 deletions

View file

@ -30,6 +30,7 @@ public final class InputAttributes {
final public boolean mInputTypeNoAutoCorrect; final public boolean mInputTypeNoAutoCorrect;
final public boolean mIsPasswordField; final public boolean mIsPasswordField;
final public boolean mShouldShowSuggestions; final public boolean mShouldShowSuggestions;
final public boolean mMayOverrideShowingSuggestions;
final public boolean mApplicationSpecifiedCompletionOn; final public boolean mApplicationSpecifiedCompletionOn;
final public boolean mShouldInsertSpacesAutomatically; final public boolean mShouldInsertSpacesAutomatically;
final public boolean mShouldShowVoiceInputKey; final public boolean mShouldShowVoiceInputKey;
@ -71,6 +72,7 @@ public final class InputAttributes {
+ " imeOptions=0x%08x", inputType, editorInfo.imeOptions)); + " imeOptions=0x%08x", inputType, editorInfo.imeOptions));
} }
mShouldShowSuggestions = false; mShouldShowSuggestions = false;
mMayOverrideShowingSuggestions = false;
mInputTypeNoAutoCorrect = false; mInputTypeNoAutoCorrect = false;
mApplicationSpecifiedCompletionOn = false; mApplicationSpecifiedCompletionOn = false;
mShouldInsertSpacesAutomatically = false; mShouldInsertSpacesAutomatically = false;
@ -90,6 +92,7 @@ public final class InputAttributes {
// TODO: Have a helper method in InputTypeUtils // TODO: Have a helper method in InputTypeUtils
// Make sure that passwords are not displayed in {@link SuggestionStripView}. // Make sure that passwords are not displayed in {@link SuggestionStripView}.
mShouldShowSuggestions = !mIsPasswordField && !flagNoSuggestions; mShouldShowSuggestions = !mIsPasswordField && !flagNoSuggestions;
mMayOverrideShowingSuggestions = !mIsPasswordField;
mShouldInsertSpacesAutomatically = InputTypeUtils.isAutoSpaceFriendlyType(inputType); mShouldInsertSpacesAutomatically = InputTypeUtils.isAutoSpaceFriendlyType(inputType);

View file

@ -118,6 +118,7 @@ public class SettingsValues {
public final int mScoreLimitForAutocorrect; public final int mScoreLimitForAutocorrect;
public final boolean mAutoCorrectionEnabledPerUserSettings; public final boolean mAutoCorrectionEnabledPerUserSettings;
private final boolean mSuggestionsEnabledPerUserSettings; private final boolean mSuggestionsEnabledPerUserSettings;
private final boolean mOverrideShowingSuggestions;
public final SettingsValuesForSuggestion mSettingsValuesForSuggestion; public final SettingsValuesForSuggestion mSettingsValuesForSuggestion;
public final boolean mIncognitoModeEnabled; public final boolean mIncognitoModeEnabled;
private final AsyncResultHolder<AppWorkaroundsUtils> mAppWorkarounds; private final AsyncResultHolder<AppWorkaroundsUtils> mAppWorkarounds;
@ -188,8 +189,9 @@ public class SettingsValues {
&& prefs.getBoolean(Settings.PREF_GESTURE_FLOATING_PREVIEW_TEXT, true); && prefs.getBoolean(Settings.PREF_GESTURE_FLOATING_PREVIEW_TEXT, true);
mAutoCorrectionEnabledPerUserSettings = mAutoCorrectEnabled; mAutoCorrectionEnabledPerUserSettings = mAutoCorrectEnabled;
//&& !mInputAttributes.mInputTypeNoAutoCorrect; // follow that request or not? //&& !mInputAttributes.mInputTypeNoAutoCorrect; // follow that request or not?
mOverrideShowingSuggestions = mInputAttributes.mMayOverrideShowingSuggestions && readSuggestionsOverrideEnabled(prefs);
mSuggestionsEnabledPerUserSettings = (mInputAttributes.mShouldShowSuggestions && readSuggestionsEnabled(prefs)) mSuggestionsEnabledPerUserSettings = (mInputAttributes.mShouldShowSuggestions && readSuggestionsEnabled(prefs))
|| (!mInputAttributes.mIsPasswordField && readSuggestionsOverrideEnabled(prefs)); || mOverrideShowingSuggestions;
mIncognitoModeEnabled = Settings.readAlwaysIncognitoMode(prefs) || mInputAttributes.mNoLearning mIncognitoModeEnabled = Settings.readAlwaysIncognitoMode(prefs) || mInputAttributes.mNoLearning
|| mInputAttributes.mIsPasswordField; || mInputAttributes.mIsPasswordField;
mKeyboardHeightScale = prefs.getFloat(Settings.PREF_KEYBOARD_HEIGHT_SCALE, DEFAULT_SIZE_SCALE); mKeyboardHeightScale = prefs.getFloat(Settings.PREF_KEYBOARD_HEIGHT_SCALE, DEFAULT_SIZE_SCALE);
@ -248,7 +250,8 @@ public class SettingsValues {
} }
public boolean needsToLookupSuggestions() { public boolean needsToLookupSuggestions() {
return mAutoCorrectionEnabledPerUserSettings || isSuggestionsEnabledPerUserSettings(); return (mInputAttributes.mShouldShowSuggestions || mOverrideShowingSuggestions)
&& (mAutoCorrectionEnabledPerUserSettings || isSuggestionsEnabledPerUserSettings());
} }
public boolean isSuggestionsEnabledPerUserSettings() { public boolean isSuggestionsEnabledPerUserSettings() {