diff --git a/res/layout/activity_updates.xml b/res/layout/activity_updates.xml
index f12e3f8..8a9d71b 100644
--- a/res/layout/activity_updates.xml
+++ b/res/layout/activity_updates.xml
@@ -76,6 +76,21 @@
+
+
+
+
+
%1$s of %2$s - %3$s left
Installing update
Verifying update
+ No new updates found. To manually check for new updates, use the Refresh button.
Download
Pause download
diff --git a/src/org/lineageos/updater/UpdatesActivity.java b/src/org/lineageos/updater/UpdatesActivity.java
index 221355c..b57c62d 100644
--- a/src/org/lineageos/updater/UpdatesActivity.java
+++ b/src/org/lineageos/updater/UpdatesActivity.java
@@ -40,6 +40,7 @@ import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
+import android.view.View;
import android.widget.TextView;
import org.json.JSONException;
@@ -285,17 +286,24 @@ public class UpdatesActivity extends UpdatesListActivity {
List updateIds = new ArrayList<>();
List sortedUpdates = controller.getUpdates();
- Collections.sort(sortedUpdates, new Comparator() {
- @Override
- public int compare(UpdateInfo u1, UpdateInfo u2) {
- return Long.compare(u2.getTimestamp(), u1.getTimestamp());
+ if (sortedUpdates.isEmpty()) {
+ findViewById(R.id.no_new_updates_view).setVisibility(View.VISIBLE);
+ findViewById(R.id.recycler_view).setVisibility(View.GONE);
+ } else {
+ findViewById(R.id.no_new_updates_view).setVisibility(View.GONE);
+ findViewById(R.id.recycler_view).setVisibility(View.VISIBLE);
+ Collections.sort(sortedUpdates, new Comparator() {
+ @Override
+ public int compare(UpdateInfo u1, UpdateInfo u2) {
+ return Long.compare(u2.getTimestamp(), u1.getTimestamp());
+ }
+ });
+ for (UpdateInfo update : sortedUpdates) {
+ updateIds.add(update.getDownloadId());
}
- });
- for (UpdateInfo update : sortedUpdates) {
- updateIds.add(update.getDownloadId());
+ mAdapter.setData(updateIds);
+ mAdapter.notifyDataSetChanged();
}
- mAdapter.setData(updateIds);
- mAdapter.notifyDataSetChanged();
}
private void getUpdatesList() {