hide "Update All" button once clicked to prevent repeated clicks

fdroid/fdroidclient#1357
This commit is contained in:
Hans-Christoph Steiner 2018-07-25 22:08:03 +02:00
parent e49d8c92df
commit a2361df854

View File

@ -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);