Show snackbar for some download status changes
This commit is contained in:
@@ -60,6 +60,10 @@
|
||||
<string name="snack_no_updates_found">No new updates found</string>
|
||||
<string name="snack_updates_check_failed">The update check failed. Please check your internet connection and try again later.</string>
|
||||
|
||||
<string name="snack_download_failed">The download failed. Please check your internet connection and try again later.</string>
|
||||
<string name="snack_download_verification_failed">The update verification failed.</string>
|
||||
<string name="snack_download_verified">Download completed.</string>
|
||||
|
||||
<string name="header_title_text">LineageOS\n%1$s</string>
|
||||
<string name="header_android_version">Android <xliff:g id="version" example="7.1.2">%1$s</xliff:g></string>
|
||||
<string name="header_last_updates_check">Last checked: <xliff:g id="date" example="1 January 1970">%1$s</xliff:g> (<xliff:g id="time" example="01:23">%2$s</xliff:g>)</string>
|
||||
|
||||
@@ -88,6 +88,8 @@ public class UpdatesActivity extends AppCompatActivity {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
if (UpdaterController.ACTION_UPDATE_STATUS.equals(intent.getAction())) {
|
||||
String downloadId = intent.getStringExtra(UpdaterController.EXTRA_DOWNLOAD_ID);
|
||||
handleDownloadStatusChange(downloadId);
|
||||
mAdapter.notifyDataSetChanged();
|
||||
} else if (UpdaterController.ACTION_DOWNLOAD_PROGRESS.equals(intent.getAction()) ||
|
||||
UpdaterController.ACTION_INSTALL_PROGRESS.equals(intent.getAction())) {
|
||||
@@ -367,6 +369,21 @@ public class UpdatesActivity extends AppCompatActivity {
|
||||
headerLastCheck.setText(lastCheckString);
|
||||
}
|
||||
|
||||
private void handleDownloadStatusChange(String downloadId) {
|
||||
UpdateDownload update = mUpdaterService.getUpdaterController().getUpdate(downloadId);
|
||||
switch (update.getStatus()) {
|
||||
case PAUSED_ERROR:
|
||||
showSnackBar(R.string.snack_download_failed, Snackbar.LENGTH_LONG);
|
||||
break;
|
||||
case VERIFICATION_FAILED:
|
||||
showSnackBar(R.string.snack_download_verification_failed, Snackbar.LENGTH_LONG);
|
||||
break;
|
||||
case VERIFIED:
|
||||
showSnackBar(R.string.snack_download_verified, Snackbar.LENGTH_LONG);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void showSnackBar(int stringId, int duration) {
|
||||
Snackbar.make(findViewById(R.id.main_container), stringId, duration).show();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user