76 lines
3.0 KiB
Java
76 lines
3.0 KiB
Java
|
/*
|
||
|
* Copyright (C) 2008-2009 Google Inc.
|
||
|
*
|
||
|
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
||
|
* use this file except in compliance with the License. You may obtain a copy of
|
||
|
* the License at
|
||
|
*
|
||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||
|
*
|
||
|
* Unless required by applicable law or agreed to in writing, software
|
||
|
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||
|
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||
|
* License for the specific language governing permissions and limitations under
|
||
|
* the License.
|
||
|
*/
|
||
|
|
||
|
package com.android.inputmethod.latin;
|
||
|
|
||
|
import android.content.SharedPreferences;
|
||
|
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
|
||
|
import android.os.Bundle;
|
||
|
import android.preference.ListPreference;
|
||
|
import android.preference.Preference;
|
||
|
import android.preference.PreferenceActivity;
|
||
|
import android.preference.PreferenceGroup;
|
||
|
|
||
|
public class LatinIMESettings extends PreferenceActivity
|
||
|
implements OnSharedPreferenceChangeListener{
|
||
|
|
||
|
private static final String CORRECTION_MODE_KEY = "prediction_mode";
|
||
|
private static final String PREDICTION_SETTINGS_KEY = "prediction_settings";
|
||
|
private static final String PREDICTION_LANDSCAPE_KEY = "prediction_landscape";
|
||
|
|
||
|
private ListPreference mCorrectionMode;
|
||
|
private PreferenceGroup mPredictionSettings;
|
||
|
private Preference mPredictionLandscape;
|
||
|
|
||
|
@Override
|
||
|
protected void onCreate(Bundle icicle) {
|
||
|
super.onCreate(icicle);
|
||
|
addPreferencesFromResource(R.xml.prefs);
|
||
|
mCorrectionMode = (ListPreference) findPreference(CORRECTION_MODE_KEY);
|
||
|
mPredictionSettings = (PreferenceGroup) findPreference(PREDICTION_SETTINGS_KEY);
|
||
|
mPredictionLandscape = findPreference(PREDICTION_LANDSCAPE_KEY);
|
||
|
updatePredictionSettings();
|
||
|
getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
protected void onDestroy() {
|
||
|
getPreferenceScreen().getSharedPreferences()
|
||
|
.unregisterOnSharedPreferenceChangeListener(this);
|
||
|
super.onDestroy();
|
||
|
}
|
||
|
|
||
|
private void updatePredictionSettings() {
|
||
|
if (mCorrectionMode != null && mPredictionSettings != null) {
|
||
|
String correctionMode = mCorrectionMode.getValue();
|
||
|
if (correctionMode.equals(getResources().getString(R.string.prediction_none))) {
|
||
|
mPredictionSettings.setEnabled(false);
|
||
|
} else {
|
||
|
mPredictionSettings.setEnabled(true);
|
||
|
boolean suggestionsInLandscape =
|
||
|
!correctionMode.equals(getResources().getString(R.string.prediction_full));
|
||
|
mPredictionLandscape.setEnabled(suggestionsInLandscape);
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public void onSharedPreferenceChanged(SharedPreferences preferences, String key) {
|
||
|
if (key.equals(CORRECTION_MODE_KEY)) {
|
||
|
updatePredictionSettings();
|
||
|
}
|
||
|
}
|
||
|
}
|