am 41f7fb51
: Make input language selection settings work
* commit '41f7fb51b0966d76a70e8b927ab4f0f21b70107b': Make input language selection settings work
This commit is contained in:
commit
dcd37c65dd
3 changed files with 26 additions and 8 deletions
|
@ -51,7 +51,7 @@
|
|||
<dimen name="candidate_strip_fading_edge_length">63dip</dimen>
|
||||
<dimen name="candidate_strip_padding">0dip</dimen>
|
||||
<dimen name="candidate_min_width">0.3in</dimen>
|
||||
<dimen name="candidate_padding">0dip</dimen>
|
||||
<dimen name="candidate_padding">6dip</dimen>
|
||||
<dimen name="candidate_text_size">18dip</dimen>
|
||||
<dimen name="spacebar_vertical_correction">4dip</dimen>
|
||||
<!-- If the screen height in landscape is larger than the below value, then the keyboard
|
||||
|
|
|
@ -70,15 +70,10 @@
|
|||
android:defaultValue="@string/voice_mode_main"
|
||||
/>
|
||||
|
||||
<!-- TODO: Filter subtypes by IME in SubtypeEnabler -->
|
||||
<!-- TODO: Maybe use this only for phone? -->
|
||||
<PreferenceScreen
|
||||
android:key="subtype_settings"
|
||||
android:title="@string/language_selection_title"
|
||||
android:summary="@string/language_selection_summary">
|
||||
<intent
|
||||
android:action="android.settings.INPUT_METHOD_AND_SUBTYPE_ENABLER"/>
|
||||
</PreferenceScreen>
|
||||
android:summary="@string/language_selection_summary" />
|
||||
|
||||
<PreferenceCategory
|
||||
android:title="@string/prediction_category"
|
||||
|
|
|
@ -23,13 +23,17 @@ import android.app.AlertDialog;
|
|||
import android.app.Dialog;
|
||||
import android.app.backup.BackupManager;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.os.Bundle;
|
||||
import android.os.Vibrator;
|
||||
import android.preference.CheckBoxPreference;
|
||||
import android.preference.ListPreference;
|
||||
import android.preference.Preference;
|
||||
import android.preference.Preference.OnPreferenceClickListener;
|
||||
import android.preference.PreferenceActivity;
|
||||
import android.preference.PreferenceGroup;
|
||||
import android.preference.PreferenceScreen;
|
||||
import android.speech.SpeechRecognizer;
|
||||
import android.text.AutoText;
|
||||
import android.text.TextUtils;
|
||||
|
@ -41,7 +45,7 @@ import java.util.Locale;
|
|||
|
||||
public class Settings extends PreferenceActivity
|
||||
implements SharedPreferences.OnSharedPreferenceChangeListener,
|
||||
DialogInterface.OnDismissListener {
|
||||
DialogInterface.OnDismissListener, OnPreferenceClickListener {
|
||||
private static final String TAG = "Settings";
|
||||
|
||||
public static final String PREF_VIBRATE_ON = "vibrate_on";
|
||||
|
@ -64,6 +68,7 @@ public class Settings extends PreferenceActivity
|
|||
// Dialog ids
|
||||
private static final int VOICE_INPUT_CONFIRM_DIALOG = 0;
|
||||
|
||||
private PreferenceScreen mInputLanguageSelection;
|
||||
private CheckBoxPreference mQuickFixes;
|
||||
private ListPreference mVoicePreference;
|
||||
private ListPreference mSettingsKeyPreference;
|
||||
|
@ -84,10 +89,13 @@ public class Settings extends PreferenceActivity
|
|||
final String currentSetting = mAutoCorrectionThreshold.getValue();
|
||||
mBigramSuggestion.setEnabled(!currentSetting.equals(autoCorrectionOff));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onCreate(Bundle icicle) {
|
||||
super.onCreate(icicle);
|
||||
addPreferencesFromResource(R.xml.prefs);
|
||||
mInputLanguageSelection = (PreferenceScreen) findPreference(PREF_SUBTYPES);
|
||||
mInputLanguageSelection.setOnPreferenceClickListener(this);
|
||||
mQuickFixes = (CheckBoxPreference) findPreference(PREF_QUICK_FIXES);
|
||||
mVoicePreference = (ListPreference) findPreference(PREF_VOICE_SETTINGS_KEY);
|
||||
mSettingsKeyPreference = (ListPreference) findPreference(PREF_SETTINGS_KEY);
|
||||
|
@ -169,6 +177,21 @@ public class Settings extends PreferenceActivity
|
|||
updateSettingsKeySummary();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onPreferenceClick(Preference pref) {
|
||||
if (pref == mInputLanguageSelection) {
|
||||
final String action;
|
||||
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.HONEYCOMB) {
|
||||
action = "android.settings.INPUT_METHOD_AND_SUBTYPE_ENABLER";
|
||||
} else {
|
||||
action = "com.android.inputmethod.latin.INPUT_LANGUAGE_SELECTION";
|
||||
}
|
||||
startActivity(new Intent(action));
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private void updateSettingsKeySummary() {
|
||||
mSettingsKeyPreference.setSummary(
|
||||
getResources().getStringArray(R.array.settings_key_modes)
|
||||
|
|
Loading…
Reference in a new issue