diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewActivity.java b/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewActivity.java
index d8c6f5f04..9909cc08f 100644
--- a/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewActivity.java
+++ b/astrid/plugin-src/com/todoroo/astrid/actfm/TagViewActivity.java
@@ -36,6 +36,7 @@ import android.view.View.OnTouchListener;
import android.view.ViewGroup;
import android.view.inputmethod.EditorInfo;
import android.widget.ArrayAdapter;
+import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
@@ -94,6 +95,8 @@ public class TagViewActivity extends TaskListActivity implements OnTabChangeList
protected static final int REQUEST_CODE_PICTURE = 2;
protected static final int REQUEST_ACTFM_LOGIN = 3;
+ private static final String MEMBERS_IN_PROGRESS = "members"; //$NON-NLS-1$
+
private TagData tagData;
@Autowired TagDataService tagDataService;
@@ -110,6 +113,7 @@ public class TagViewActivity extends TaskListActivity implements OnTabChangeList
private AsyncImageView picture;
private EditText tagName;
private View taskListView;
+ private CheckBox isSilent;
private TabHost tabHost;
private TabWidget tabWidget;
@@ -139,6 +143,12 @@ public class TagViewActivity extends TaskListActivity implements OnTabChangeList
if(getIntent().hasExtra(EXTRA_START_TAB))
tabHost.setCurrentTabByTag(getIntent().getStringExtra(EXTRA_START_TAB));
+
+ if(savedInstanceState != null && savedInstanceState.containsKey(MEMBERS_IN_PROGRESS)) {
+ String members = savedInstanceState.getString(MEMBERS_IN_PROGRESS);
+ if(members != null)
+ updateMembers(members);
+ }
}
@SuppressWarnings("nls")
@@ -231,6 +241,7 @@ public class TagViewActivity extends TaskListActivity implements OnTabChangeList
tagMembers = (PeopleContainer) findViewById(R.id.members_container);
tagName = (EditText) findViewById(R.id.tag_name);
picture = (AsyncImageView) findViewById(R.id.picture);
+ isSilent = (CheckBox) findViewById(R.id.tag_silenced);
if(actFmPreferenceService.isLoggedIn()) {
picture.setVisibility(View.VISIBLE);
@@ -422,8 +433,13 @@ public class TagViewActivity extends TaskListActivity implements OnTabChangeList
System.err.println(tagData.getValue(TagData.USER));
}
- tagMembers.removeAllViews();
String peopleJson = tagData.getValue(TagData.MEMBERS);
+ updateMembers(peopleJson);
+ }
+
+ @SuppressWarnings("nls")
+ private void updateMembers(String peopleJson) {
+ tagMembers.removeAllViews();
System.err.println("gotta grab ppl - " + peopleJson);
Log.e("GAH", "gaga", new Throwable());
if(!TextUtils.isEmpty(peopleJson)) {
@@ -567,6 +583,16 @@ public class TagViewActivity extends TaskListActivity implements OnTabChangeList
unregisterReceiver(notifyReceiver);
}
+ @Override
+ protected void onSaveInstanceState(Bundle outState) {
+ super.onSaveInstanceState(outState);
+
+ if(tagMembers.getChildCount() > 1) {
+ JSONArray members = tagMembers.toJSONArray();
+ outState.putString(MEMBERS_IN_PROGRESS, members.toString());
+ }
+ }
+
// --- events
private void saveSettings() {
@@ -593,6 +619,7 @@ public class TagViewActivity extends TaskListActivity implements OnTabChangeList
tagData.setValue(TagData.MEMBERS, members.toString());
tagData.setValue(TagData.MEMBER_COUNT, members.length());
+ tagData.setFlag(TagData.FLAGS, TagData.FLAG_SILENT, isSilent.isChecked());
if(actFmPreferenceService.isLoggedIn())
Flags.set(Flags.TOAST_ON_SAVE);
diff --git a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java
index c757978de..976db9e32 100644
--- a/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java
+++ b/astrid/plugin-src/com/todoroo/astrid/actfm/sync/ActFmSyncService.java
@@ -336,6 +336,12 @@ public final class ActFmSyncService {
}
}
+ if(values.containsKey(TagData.FLAGS.name)) {
+ params.add("is_silent");
+ boolean silenced = tagData.getFlag(TagData.FLAGS, TagData.FLAG_SILENT);
+ params.add(silenced ? "1" : "0");
+ }
+
if(params.size() == 0 || !checkForToken())
return;
diff --git a/astrid/res/layout/task_list_body_tag.xml b/astrid/res/layout/task_list_body_tag.xml
index d02afc9b7..07db61c17 100644
--- a/astrid/res/layout/task_list_body_tag.xml
+++ b/astrid/res/layout/task_list_body_tag.xml
@@ -106,6 +106,8 @@
android:id="@+id/listSettingsMore"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
+ android:layout_marginTop="10dip"
+ android:orientation="vertical"
android:visibility="gone">