62 lines
2.3 KiB
Java
62 lines
2.3 KiB
Java
|
package org.thoughtcrime.securesms.preferences;
|
||
|
|
||
|
import android.content.Context;
|
||
|
import android.os.Bundle;
|
||
|
import android.support.v4.preference.PreferenceFragment;
|
||
|
|
||
|
import org.thoughtcrime.securesms.ApplicationPreferencesActivity;
|
||
|
import org.thoughtcrime.securesms.R;
|
||
|
import org.thoughtcrime.securesms.util.TextSecurePreferences;
|
||
|
|
||
|
public class AppearancePreferenceFragment extends PreferenceFragment {
|
||
|
|
||
|
@Override
|
||
|
public void onCreate(Bundle paramBundle) {
|
||
|
super.onCreate(paramBundle);
|
||
|
addPreferencesFromResource(R.xml.preferences_appearance);
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void onStart() {
|
||
|
super.onStart();
|
||
|
getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener((ApplicationPreferencesActivity)getActivity());
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void onResume() {
|
||
|
super.onResume();
|
||
|
((ApplicationPreferencesActivity) getActivity()).getSupportActionBar().setTitle(R.string.preferences__appearance);
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public void onStop() {
|
||
|
super.onStop();
|
||
|
getPreferenceScreen().getSharedPreferences().unregisterOnSharedPreferenceChangeListener((ApplicationPreferencesActivity) getActivity());
|
||
|
}
|
||
|
|
||
|
public static CharSequence getSummary(Context context) {
|
||
|
String[] languageEntries = context.getResources().getStringArray(R.array.language_entries);
|
||
|
String[] languageEntryValues = context.getResources().getStringArray(R.array.language_values);
|
||
|
String[] themeEntries = context.getResources().getStringArray(R.array.pref_theme_entries);
|
||
|
String[] themeEntryValues = context.getResources().getStringArray(R.array.pref_theme_values);
|
||
|
|
||
|
Integer langIndex = findIndexOfValue(TextSecurePreferences.getLanguage(context), languageEntryValues);
|
||
|
Integer themeIndex = findIndexOfValue(TextSecurePreferences.getTheme(context), themeEntryValues);
|
||
|
|
||
|
return context.getString(R.string.preferences__theme) + ": " + themeEntries[themeIndex] + ", " +
|
||
|
context.getString(R.string.preferences__language) + ": " + languageEntries[langIndex];
|
||
|
}
|
||
|
|
||
|
// Copy from ListPreference
|
||
|
private static int findIndexOfValue(String value, CharSequence[] mEntryValues) {
|
||
|
if (value != null && mEntryValues != null) {
|
||
|
for (int i = mEntryValues.length - 1; i >= 0; i--) {
|
||
|
if (mEntryValues[i].equals(value)) {
|
||
|
return i;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
return -1;
|
||
|
}
|
||
|
}
|