diff --git a/res/values/cm_strings.xml b/res/values/cm_strings.xml
index c4e7b528ea3d24bbe15ba8f858dbee8dcb57c48d..b625747b4e1d083c8790427517fff2c01f82035b 100644
--- a/res/values/cm_strings.xml
+++ b/res/values/cm_strings.xml
@@ -224,4 +224,7 @@
Updated to /e/OS v%1$s
+ /e/OS v%1$s - update available
+ /e/OS v%1$s - update in progress
+ /e/OS v%1$s - installed reboot required
diff --git a/src/com/android/settings/system/SystemUpdatePreferenceController.java b/src/com/android/settings/system/SystemUpdatePreferenceController.java
index c83c12b048e29b66a883ee5691a87600c02bc37d..f2727cbae4a00cee0fa56a52bf5cfe5184844747 100644
--- a/src/com/android/settings/system/SystemUpdatePreferenceController.java
+++ b/src/com/android/settings/system/SystemUpdatePreferenceController.java
@@ -91,8 +91,8 @@ public class SystemUpdatePreferenceController extends BasePreferenceController {
@Override
public CharSequence getSummary() {
- CharSequence summary = mContext.getString(R.string.e_version_summary,
- SystemProperties.get(E_OS_VERSION_PROP));
+ final String currentVersion = SystemProperties.get(E_OS_VERSION_PROP);
+ CharSequence summary = mContext.getString(R.string.e_version_summary, currentVersion);
final FutureTask bundleFutureTask = new FutureTask<>(
// Put the API call in a future to avoid StrictMode violation.
() -> mUpdateManager.retrieveSystemUpdateInfo());
@@ -104,21 +104,20 @@ public class SystemUpdatePreferenceController extends BasePreferenceController {
Log.w(TAG, "Error getting system update info.");
return summary;
}
+
+ String version = updateInfo.getString(SystemUpdateManager.KEY_TITLE);
switch (updateInfo.getInt(SystemUpdateManager.KEY_STATUS)) {
case SystemUpdateManager.STATUS_WAITING_DOWNLOAD:
+ summary = mContext.getString(R.string.e_version_pending_update_summary, version);
+ break;
case SystemUpdateManager.STATUS_IN_PROGRESS:
- case SystemUpdateManager.STATUS_WAITING_INSTALL:
+ summary = mContext.getString(R.string.e_version_in_progress_update_summary, version);
+ break;
case SystemUpdateManager.STATUS_WAITING_REBOOT:
- summary = mContext.getText(R.string.android_version_pending_update_summary);
+ summary = mContext.getString(R.string.e_version_reboot_pending_summary, version);
break;
- case SystemUpdateManager.STATUS_UNKNOWN:
- Log.d(TAG, "Update statue unknown");
- // fall through to next branch
- case SystemUpdateManager.STATUS_IDLE:
- final String version = updateInfo.getString(SystemUpdateManager.KEY_TITLE);
- if (!TextUtils.isEmpty(version)) {
- summary = mContext.getString(R.string.android_version_summary, version);
- }
+ default:
+ summary = mContext.getString(R.string.e_version_summary, currentVersion);
break;
}
return summary;