From a2361df8545f1bea0492e136c0b19117d24e3656 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Wed, 25 Jul 2018 22:08:03 +0200 Subject: [PATCH] hide "Update All" button once clicked to prevent repeated clicks fdroid/fdroidclient#1357 --- .../updates/items/UpdateableAppsHeader.java | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java index 7770e3624..5e5b6a971 100644 --- a/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java +++ b/app/src/main/java/org/fdroid/fdroid/views/updates/items/UpdateableAppsHeader.java @@ -64,7 +64,7 @@ public class UpdateableAppsHeader extends AppUpdateData { } } - public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener { + public static class ViewHolder extends RecyclerView.ViewHolder { private UpdateableAppsHeader header; @@ -81,8 +81,22 @@ public class UpdateableAppsHeader extends AppUpdateData { appsToUpdate = (TextView) itemView.findViewById(R.id.text_apps_to_update); toggleAppsToUpdate = (Button) itemView.findViewById(R.id.button_toggle_apps_to_update); - toggleAppsToUpdate.setOnClickListener(this); - downloadAll.setOnClickListener(this); + toggleAppsToUpdate.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + header.adapter.toggleAllUpdateableApps(); + updateToggleButtonText(); + } + }); + + downloadAll.setVisibility(View.VISIBLE); + downloadAll.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + downloadAll.setVisibility(View.GONE); + UpdateService.autoDownloadUpdates(header.activity); + } + }); } public void bindHeader(UpdateableAppsHeader header) { @@ -101,16 +115,6 @@ public class UpdateableAppsHeader extends AppUpdateData { updateToggleButtonText(); } - @Override - public void onClick(View v) { - if (v == toggleAppsToUpdate) { - header.adapter.toggleAllUpdateableApps(); - updateToggleButtonText(); - } else if (v == downloadAll) { - UpdateService.autoDownloadUpdates(header.activity); - } - } - private void updateToggleButtonText() { if (header.adapter.canViewAllUpdateableApps()) { toggleAppsToUpdate.setText(R.string.updates__hide_updateable_apps);