diff options
author | Amith Yamasani <yamasani@google.com> | 2011-07-22 10:34:58 -0700 |
---|---|---|
committer | Amith Yamasani <yamasani@google.com> | 2011-07-25 14:09:57 -0700 |
commit | a4379d6b38e568fcb60831d6f2fa349ba20f9b82 (patch) | |
tree | c864ae3fb36b7da46c80e8a2639dc63c2352aace /src/com | |
parent | 8374a2db64f772c5e934ccd2e47f0df4b5928012 (diff) | |
download | packages_apps_settings-a4379d6b38e568fcb60831d6f2fa349ba20f9b82.zip packages_apps_settings-a4379d6b38e568fcb60831d6f2fa349ba20f9b82.tar.gz packages_apps_settings-a4379d6b38e568fcb60831d6f2fa349ba20f9b82.tar.bz2 |
Use a different wallpaper fragment title from the preference item.
Change wallpaper list ordering to alphabetic.
Display battery level and charging status in Battery settings.
Change-Id: I8ead0fb0f018c79ed258bd1c1ca3f8ecaf32da83
Diffstat (limited to 'src/com')
-rw-r--r-- | src/com/android/settings/BatteryInfo.java | 21 | ||||
-rw-r--r-- | src/com/android/settings/Settings.java | 13 | ||||
-rw-r--r-- | src/com/android/settings/Utils.java | 35 | ||||
-rw-r--r-- | src/com/android/settings/WallpaperTypeSettings.java | 8 | ||||
-rw-r--r-- | src/com/android/settings/deviceinfo/Status.java | 29 | ||||
-rw-r--r-- | src/com/android/settings/fuelgauge/PowerUsageSummary.java | 34 |
6 files changed, 88 insertions, 52 deletions
diff --git a/src/com/android/settings/BatteryInfo.java b/src/com/android/settings/BatteryInfo.java index 3e037cf..d8046cf 100644 --- a/src/com/android/settings/BatteryInfo.java +++ b/src/com/android/settings/BatteryInfo.java @@ -90,26 +90,7 @@ public class BatteryInfo extends Activity { + getString(R.string.battery_info_temperature_units)); mTechnology.setText("" + intent.getStringExtra("technology")); - int status = intent.getIntExtra("status", BatteryManager.BATTERY_STATUS_UNKNOWN); - String statusString; - if (status == BatteryManager.BATTERY_STATUS_CHARGING) { - statusString = getString(R.string.battery_info_status_charging); - if (plugType > 0) { - statusString = statusString + " " + getString( - (plugType == BatteryManager.BATTERY_PLUGGED_AC) - ? R.string.battery_info_status_charging_ac - : R.string.battery_info_status_charging_usb); - } - } else if (status == BatteryManager.BATTERY_STATUS_DISCHARGING) { - statusString = getString(R.string.battery_info_status_discharging); - } else if (status == BatteryManager.BATTERY_STATUS_NOT_CHARGING) { - statusString = getString(R.string.battery_info_status_not_charging); - } else if (status == BatteryManager.BATTERY_STATUS_FULL) { - statusString = getString(R.string.battery_info_status_full); - } else { - statusString = getString(R.string.battery_info_status_unknown); - } - mStatus.setText(statusString); + mStatus.setText(Utils.getBatteryStatus(getResources(), intent)); switch (plugType) { case 0: diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java index eb0b40c..456bdf6 100644 --- a/src/com/android/settings/Settings.java +++ b/src/com/android/settings/Settings.java @@ -23,7 +23,9 @@ import android.content.pm.ActivityInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import android.os.Bundle; +import android.preference.Preference; import android.preference.PreferenceActivity; +import android.preference.PreferenceFragment; import android.text.TextUtils; import android.util.Log; import android.view.LayoutInflater; @@ -535,6 +537,17 @@ public class Settings extends PreferenceActivity implements ButtonBarHandler { } @Override + public boolean onPreferenceStartFragment(PreferenceFragment caller, Preference pref) { + // Override the fragment title for Wallpaper settings + CharSequence title = pref.getTitle(); + if (pref.getFragment().equals(WallpaperTypeSettings.class.getName())) { + title = getString(R.string.wallpaper_settings_fragment_title); + } + startPreferencePanel(pref.getFragment(), pref.getExtras(), 0, title, null, 0); + return true; + } + + @Override public void setListAdapter(ListAdapter adapter) { if (mHeaders == null) { mHeaders = new ArrayList<Header>(); diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java index 422ae90..b725d56 100644 --- a/src/com/android/settings/Utils.java +++ b/src/com/android/settings/Utils.java @@ -27,6 +27,7 @@ import android.content.res.Resources.NotFoundException; import android.graphics.drawable.Drawable; import android.net.ConnectivityManager; import android.net.LinkProperties; +import android.os.BatteryManager; import android.os.Bundle; import android.os.SystemProperties; import android.preference.Preference; @@ -330,4 +331,38 @@ public class Utils { return new Locale(brokenDownLocale[0], brokenDownLocale[1], brokenDownLocale[2]); } } + + public static String getBatteryPercentage(Intent batteryChangedIntent) { + int level = batteryChangedIntent.getIntExtra("level", 0); + int scale = batteryChangedIntent.getIntExtra("scale", 100); + return String.valueOf(level * 100 / scale) + "%"; + } + + public static String getBatteryStatus(Resources res, Intent batteryChangedIntent) { + final Intent intent = batteryChangedIntent; + + int plugType = intent.getIntExtra("plugged", 0); + int status = intent.getIntExtra("status", BatteryManager.BATTERY_STATUS_UNKNOWN); + String statusString; + if (status == BatteryManager.BATTERY_STATUS_CHARGING) { + statusString = res.getString(R.string.battery_info_status_charging); + if (plugType > 0) { + statusString = statusString + + " " + + res.getString((plugType == BatteryManager.BATTERY_PLUGGED_AC) + ? R.string.battery_info_status_charging_ac + : R.string.battery_info_status_charging_usb); + } + } else if (status == BatteryManager.BATTERY_STATUS_DISCHARGING) { + statusString = res.getString(R.string.battery_info_status_discharging); + } else if (status == BatteryManager.BATTERY_STATUS_NOT_CHARGING) { + statusString = res.getString(R.string.battery_info_status_not_charging); + } else if (status == BatteryManager.BATTERY_STATUS_FULL) { + statusString = res.getString(R.string.battery_info_status_full); + } else { + statusString = res.getString(R.string.battery_info_status_unknown); + } + + return statusString; + } } diff --git a/src/com/android/settings/WallpaperTypeSettings.java b/src/com/android/settings/WallpaperTypeSettings.java index fa0b4e4..fa5f0ac 100644 --- a/src/com/android/settings/WallpaperTypeSettings.java +++ b/src/com/android/settings/WallpaperTypeSettings.java @@ -16,13 +16,14 @@ package com.android.settings; +import android.app.Activity; import android.content.ComponentName; import android.content.Intent; import android.content.pm.PackageManager; import android.content.pm.ResolveInfo; -import android.graphics.drawable.Drawable; import android.os.Bundle; import android.preference.Preference; +import android.preference.PreferenceScreen; import java.util.List; @@ -32,7 +33,6 @@ public class WallpaperTypeSettings extends SettingsPreferenceFragment { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.wallpaper_settings); - populateWallpaperTypes(); } @@ -43,6 +43,8 @@ public class WallpaperTypeSettings extends SettingsPreferenceFragment { List<ResolveInfo> rList = pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); + final PreferenceScreen parent = getPreferenceScreen(); + parent.setOrderingAsAdded(false); // Add Preference items for each of the matching activities for (ResolveInfo info : rList) { Preference pref = new Preference(getActivity()); @@ -53,7 +55,7 @@ public class WallpaperTypeSettings extends SettingsPreferenceFragment { CharSequence label = info.loadLabel(pm); if (label == null) label = info.activityInfo.packageName; pref.setTitle(label); - getPreferenceScreen().addPreference(pref); + parent.addPreference(pref); } } } diff --git a/src/com/android/settings/deviceinfo/Status.java b/src/com/android/settings/deviceinfo/Status.java index 456bc98..987fab8 100644 --- a/src/com/android/settings/deviceinfo/Status.java +++ b/src/com/android/settings/deviceinfo/Status.java @@ -157,33 +157,8 @@ public class Status extends PreferenceActivity { public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (Intent.ACTION_BATTERY_CHANGED.equals(action)) { - - int level = intent.getIntExtra("level", 0); - int scale = intent.getIntExtra("scale", 100); - - mBatteryLevel.setSummary(String.valueOf(level * 100 / scale) + "%"); - - int plugType = intent.getIntExtra("plugged", 0); - int status = intent.getIntExtra("status", BatteryManager.BATTERY_STATUS_UNKNOWN); - String statusString; - if (status == BatteryManager.BATTERY_STATUS_CHARGING) { - statusString = getString(R.string.battery_info_status_charging); - if (plugType > 0) { - statusString = statusString + " " + getString( - (plugType == BatteryManager.BATTERY_PLUGGED_AC) - ? R.string.battery_info_status_charging_ac - : R.string.battery_info_status_charging_usb); - } - } else if (status == BatteryManager.BATTERY_STATUS_DISCHARGING) { - statusString = getString(R.string.battery_info_status_discharging); - } else if (status == BatteryManager.BATTERY_STATUS_NOT_CHARGING) { - statusString = getString(R.string.battery_info_status_not_charging); - } else if (status == BatteryManager.BATTERY_STATUS_FULL) { - statusString = getString(R.string.battery_info_status_full); - } else { - statusString = getString(R.string.battery_info_status_unknown); - } - mBatteryStatus.setSummary(statusString); + mBatteryLevel.setSummary(Utils.getBatteryPercentage(intent)); + mBatteryStatus.setSummary(Utils.getBatteryStatus(getResources(), intent)); } } }; diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java index d46853d..f28ba93 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java +++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java @@ -16,10 +16,14 @@ package com.android.settings.fuelgauge; +import android.content.BroadcastReceiver; import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; import android.hardware.SensorManager; import android.os.BatteryStats; import android.os.BatteryStats.Uid; +import android.os.BatteryManager; import android.os.Bundle; import android.os.Handler; import android.os.Message; @@ -64,6 +68,9 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable { private static final String TAG = "PowerUsageSummary"; + private static final String KEY_APP_LIST = "app_list"; + private static final String KEY_BATTERY_STATUS = "battery_status"; + private static final int MENU_STATS_TYPE = Menu.FIRST; private static final int MENU_STATS_REFRESH = Menu.FIRST + 1; @@ -76,6 +83,7 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable { private final List<BatterySipper> mBluetoothSippers = new ArrayList<BatterySipper>(); private PreferenceGroup mAppListGroup; + private Preference mBatteryStatusPref; private int mStatsType = BatteryStats.STATS_SINCE_CHARGED; @@ -96,7 +104,23 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable { private ArrayList<BatterySipper> mRequestQueue = new ArrayList<BatterySipper>(); private Thread mRequestThread; private boolean mAbort; - + + private BroadcastReceiver mBatteryInfoReceiver = new BroadcastReceiver() { + + @Override + public void onReceive(Context context, Intent intent) { + String action = intent.getAction(); + if (Intent.ACTION_BATTERY_CHANGED.equals(action)) { + String batteryLevel = com.android.settings.Utils.getBatteryPercentage(intent); + String batteryStatus = com.android.settings.Utils.getBatteryStatus(getResources(), + intent); + String batterySummary = context.getResources().getString( + R.string.power_usage_level_and_status, batteryLevel, batteryStatus); + mBatteryStatusPref.setTitle(batterySummary); + } + } + }; + @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); @@ -108,7 +132,8 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable { addPreferencesFromResource(R.xml.power_usage_summary); mBatteryInfo = IBatteryStats.Stub.asInterface( ServiceManager.getService("batteryinfo")); - mAppListGroup = (PreferenceGroup) findPreference("app_list"); + mAppListGroup = (PreferenceGroup) findPreference(KEY_APP_LIST); + mBatteryStatusPref = mAppListGroup.findPreference(KEY_BATTERY_STATUS); mPowerProfile = new PowerProfile(getActivity()); setHasOptionsMenu(true); } @@ -117,6 +142,8 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable { public void onResume() { super.onResume(); mAbort = false; + getActivity().registerReceiver(mBatteryInfoReceiver, + new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); refreshStats(); } @@ -126,6 +153,7 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable { mAbort = true; } mHandler.removeMessages(MSG_UPDATE_NAME_ICON); + getActivity().unregisterReceiver(mBatteryInfoReceiver); super.onPause(); } @@ -335,6 +363,8 @@ public class PowerUsageSummary extends PreferenceFragment implements Runnable { mBluetoothSippers.clear(); mAppListGroup.setOrderingAsAdded(false); + mBatteryStatusPref.setOrder(-2); + mAppListGroup.addPreference(mBatteryStatusPref); BatteryHistoryPreference hist = new BatteryHistoryPreference(getActivity(), mStats); hist.setOrder(-1); mAppListGroup.addPreference(hist); |