diff options
author | Danesh Mondegarian <daneshm90@gmail.com> | 2013-08-19 21:44:45 -0700 |
---|---|---|
committer | Danesh Mondegarian <daneshm90@gmail.com> | 2013-08-25 11:05:07 -0700 |
commit | 596b71d43c5f13f2d0199ffdfeaa550e15838783 (patch) | |
tree | 22e84ab3d2760ad86cae3eebfaba8f869815b72c /src/com/cyanogenmod/trebuchet/preference | |
parent | cad0342d7477efbb98227d10f73d7a1bfa7f2417 (diff) | |
download | android_packages_apps_Trebuchet-596b71d43c5f13f2d0199ffdfeaa550e15838783.tar.gz android_packages_apps_Trebuchet-596b71d43c5f13f2d0199ffdfeaa550e15838783.tar.bz2 android_packages_apps_Trebuchet-596b71d43c5f13f2d0199ffdfeaa550e15838783.zip |
Trebuchet : Icon pack theme
This patchset allows the user to set an icon pack
for the entire launcher.
Change-Id: I3dc8311f7e0a7a4f174fd568aa1d74b5ceb8471a
Diffstat (limited to 'src/com/cyanogenmod/trebuchet/preference')
-rw-r--r-- | src/com/cyanogenmod/trebuchet/preference/Preferences.java | 30 | ||||
-rw-r--r-- | src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java | 14 |
2 files changed, 44 insertions, 0 deletions
diff --git a/src/com/cyanogenmod/trebuchet/preference/Preferences.java b/src/com/cyanogenmod/trebuchet/preference/Preferences.java index cf90b170a..f2fcec8be 100644 --- a/src/com/cyanogenmod/trebuchet/preference/Preferences.java +++ b/src/com/cyanogenmod/trebuchet/preference/Preferences.java @@ -23,6 +23,7 @@ import android.preference.Preference; import android.preference.PreferenceActivity; import android.preference.PreferenceCategory; import android.preference.PreferenceFragment; +import android.preference.PreferenceScreen; import android.text.TextUtils; import android.view.MenuItem; import android.view.LayoutInflater; @@ -33,6 +34,7 @@ import android.widget.ImageView; import android.widget.ListAdapter; import android.widget.TextView; +import com.cyanogenmod.trebuchet.IconPackHelper; import com.cyanogenmod.trebuchet.LauncherApplication; import com.cyanogenmod.trebuchet.R; @@ -161,11 +163,39 @@ public class Preferences extends PreferenceActivity } public static class GeneralFragment extends PreferenceFragment { + private static final String ICON_PACK_KEY = "ui_general_iconpack"; + private Preference mIconPackPreference; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.preferences_general); + mIconPackPreference = findPreference(ICON_PACK_KEY); + } + + @Override + public void onResume() { + int numIconPacks = IconPackHelper.getSupportedPackages( + getActivity()).size(); + if (numIconPacks > 0) { + mIconPackPreference.setSummary( + R.string.preferences_interface_general_iconpack_summary); + mIconPackPreference.setEnabled(true); + } else { + mIconPackPreference.setSummary(R.string.no_iconpacks_summary); + mIconPackPreference.setEnabled(false); + } + super.onResume(); + } + + + @Override + public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, + Preference preference) { + if (preference.getKey().equals("ui_general_iconpack")) { + IconPackHelper.pickIconPack(getActivity()); + } + return super.onPreferenceTreeClick(preferenceScreen, preference); } } diff --git a/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java b/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java index 9f61f8224..cd88bb5fd 100644 --- a/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java +++ b/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java @@ -61,6 +61,14 @@ public final class PreferencesProvider { (String) sKeyValues.get(key) : def; } + private static void setString(Context ctx, String key, String value) { + SharedPreferences preferences = ctx.getSharedPreferences(PREFERENCES_KEY, 0); + Editor editor = preferences.edit(); + editor.putString(key, value); + editor.apply(); // For better performance + sKeyValues.put(key, value); + } + public static class Interface { public static class Homescreen { public static int getNumberHomescreens() { @@ -231,6 +239,12 @@ public final class PreferencesProvider { public static boolean getFullscreenMode() { return getBoolean("ui_general_fullscreen", false); } + public static String getIconPack() { + return getString("ui_general_iconpack", ""); + } + public static void setIconPack(Context ctx, String packageName) { + setString(ctx, "ui_general_iconpack", packageName); + } } } |