diff options
author | Anderson Mesquita <andersonvom@gmail.com> | 2019-04-25 18:39:46 -0400 |
---|---|---|
committer | Anderson Mesquita <andersonvom@gmail.com> | 2019-05-19 13:25:27 -0400 |
commit | 9396d41dccd16435b0a1e608475dd45d2471918d (patch) | |
tree | 1785721dd5a4d72423ab3bfd427a7defc5a35474 /app/src/main/java/de/danoeh/antennapod/adapter/DataFolderAdapter.java | |
parent | 683f7e46a27740634d6cde0e5f648e240b95e401 (diff) | |
download | AntennaPod-9396d41dccd16435b0a1e608475dd45d2471918d.zip |
Add space usage bar to data folder dialog
This displays a progress bar with the amount of used/free space in each
storage location to make it easier to identify storage devices. This is
particularly useful for devices that use non-standard names.
Reference: #3049
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/adapter/DataFolderAdapter.java')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/adapter/DataFolderAdapter.java | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/DataFolderAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/DataFolderAdapter.java index f2a074b9d..f625dcc0c 100644 --- a/app/src/main/java/de/danoeh/antennapod/adapter/DataFolderAdapter.java +++ b/app/src/main/java/de/danoeh/antennapod/adapter/DataFolderAdapter.java @@ -20,6 +20,7 @@ import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.util.Converter; import de.danoeh.antennapod.core.util.StorageUtils; import de.danoeh.antennapod.dialog.ChooseDataFolderDialog; +import me.zhanghai.android.materialprogressbar.MaterialProgressBar; public class DataFolderAdapter extends RecyclerView.Adapter<DataFolderAdapter.ViewHolder> { @@ -47,6 +48,7 @@ public class DataFolderAdapter extends RecyclerView.Adapter<DataFolderAdapter.Vi StoragePath storagePath = entries.get(position); holder.path.setText(storagePath.getShortPath()); holder.size.setText(Converter.byteToString(storagePath.getAvailableSpace())); + holder.progressBar.setProgress(storagePath.getUsagePercentage()); holder.root.setOnClickListener((View v) -> selectAndDismiss(storagePath)); holder.radioButton.setOnClickListener((View v) -> selectAndDismiss(storagePath)); if (storagePath.getFullPath().equals(currentPath)) { @@ -98,6 +100,7 @@ public class DataFolderAdapter extends RecyclerView.Adapter<DataFolderAdapter.Vi private TextView path; private TextView size; private RadioButton radioButton; + private MaterialProgressBar progressBar; ViewHolder(View itemView) { super(itemView); @@ -105,6 +108,7 @@ public class DataFolderAdapter extends RecyclerView.Adapter<DataFolderAdapter.Vi path = itemView.findViewById(R.id.path); size = itemView.findViewById(R.id.size); radioButton = itemView.findViewById(R.id.radio_button); + progressBar = itemView.findViewById(R.id.used_space); } } @@ -127,5 +131,13 @@ public class DataFolderAdapter extends RecyclerView.Adapter<DataFolderAdapter.Vi long getAvailableSpace() { return StorageUtils.getFreeSpaceAvailable(path); } + + long getTotalSpace() { + return StorageUtils.getTotalSpaceAvailable(path); + } + + int getUsagePercentage() { + return 100 - (int) (100 * getAvailableSpace() / (float) getTotalSpace()); + } } }
\ No newline at end of file |