From 86ebae04b4343511cf34ce883eec85ef163895d7 Mon Sep 17 00:00:00 2001 From: akwizgran <akwizgran@users.sourceforge.net> Date: Sat, 22 Mar 2014 12:25:04 +0000 Subject: [PATCH] Fixed NullPointerException in ConfigureGroupActivity. Bug #63. --- .../groups/ConfigureGroupActivity.java | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/briar-android/src/org/briarproject/android/groups/ConfigureGroupActivity.java b/briar-android/src/org/briarproject/android/groups/ConfigureGroupActivity.java index fff9bc5f96..7314ef7bbe 100644 --- a/briar-android/src/org/briarproject/android/groups/ConfigureGroupActivity.java +++ b/briar-android/src/org/briarproject/android/groups/ConfigureGroupActivity.java @@ -50,6 +50,7 @@ SelectContactsDialog.Listener { private RadioButton visibleToAll = null, visibleToSome = null; private Button doneButton = null; private ProgressBar progress = null; + private boolean changed = false; // Fields that are accessed from background threads must be volatile @Inject private volatile DatabaseComponent db; @@ -128,20 +129,28 @@ SelectContactsDialog.Listener { public void onClick(View view) { if(view == subscribeCheckBox) { + changed = true; boolean subscribe = subscribeCheckBox.isChecked(); visibleToAll.setEnabled(subscribe); visibleToSome.setEnabled(subscribe); + } else if(view == visibleToAll) { + changed = true; } else if(view == visibleToSome) { + changed = true; if(contacts == null) loadContacts(); else displayContacts(); } else if(view == doneButton) { - boolean subscribe = subscribeCheckBox.isChecked(); - boolean all = visibleToAll.isChecked(); - // Replace the button with a progress bar - doneButton.setVisibility(GONE); - progress.setVisibility(VISIBLE); - // Update the blog in a background thread - if(subscribe || subscribed) updateGroup(subscribe, all); + if(changed) { + boolean subscribe = subscribeCheckBox.isChecked(); + boolean all = visibleToAll.isChecked(); + // Replace the button with a progress bar + doneButton.setVisibility(GONE); + progress.setVisibility(VISIBLE); + // Update the blog in a background thread + if(subscribe || subscribed) updateGroup(subscribe, all); + } else { + finish(); + } } } -- GitLab