From 019c8163cf7e08f4d49c62226a31c959f582c6c6 Mon Sep 17 00:00:00 2001 From: akwizgran <michael@briarproject.org> Date: Sat, 13 Apr 2013 14:07:06 +0100 Subject: [PATCH] Launch appropriate activity when replying to a group/blog post. --- .../briar/android/groups/GroupActivity.java | 7 +++++-- .../groups/ReadGroupMessageActivity.java | 20 +++++++++++++------ 2 files changed, 19 insertions(+), 8 deletions(-) diff --git a/briar-android/src/net/sf/briar/android/groups/GroupActivity.java b/briar-android/src/net/sf/briar/android/groups/GroupActivity.java index b72e3d2f50..710eb668a6 100644 --- a/briar-android/src/net/sf/briar/android/groups/GroupActivity.java +++ b/briar-android/src/net/sf/briar/android/groups/GroupActivity.java @@ -4,6 +4,8 @@ import static android.view.Gravity.CENTER_HORIZONTAL; import static android.widget.LinearLayout.VERTICAL; import static java.util.logging.Level.INFO; import static java.util.logging.Level.WARNING; +import static net.sf.briar.android.groups.ReadGroupMessageActivity.RESULT_NEXT; +import static net.sf.briar.android.groups.ReadGroupMessageActivity.RESULT_PREV; import static net.sf.briar.android.widgets.CommonLayoutParams.MATCH_MATCH; import static net.sf.briar.android.widgets.CommonLayoutParams.MATCH_WRAP_1; @@ -162,11 +164,11 @@ OnClickListener, OnItemClickListener { @Override public void onActivityResult(int request, int result, Intent data) { - if(result == ReadGroupMessageActivity.RESULT_PREV) { + if(result == RESULT_PREV) { int position = request - 1; if(position >= 0 && position < adapter.getCount()) displayMessage(position); - } else if(result == ReadGroupMessageActivity.RESULT_NEXT) { + } else if(result == RESULT_NEXT) { int position = request + 1; if(position >= 0 && position < adapter.getCount()) displayMessage(position); @@ -227,6 +229,7 @@ OnClickListener, OnItemClickListener { private void displayMessage(int position) { GroupMessageHeader item = adapter.getItem(position); Intent i = new Intent(this, ReadGroupMessageActivity.class); + i.putExtra("net.sf.briar.RESTRICTED", restricted); i.putExtra("net.sf.briar.GROUP_ID", groupId.getBytes()); i.putExtra("net.sf.briar.GROUP_NAME", groupName); i.putExtra("net.sf.briar.MESSAGE_ID", item.getId().getBytes()); diff --git a/briar-android/src/net/sf/briar/android/groups/ReadGroupMessageActivity.java b/briar-android/src/net/sf/briar/android/groups/ReadGroupMessageActivity.java index ab2299af0a..14b138061d 100644 --- a/briar-android/src/net/sf/briar/android/groups/ReadGroupMessageActivity.java +++ b/briar-android/src/net/sf/briar/android/groups/ReadGroupMessageActivity.java @@ -63,6 +63,7 @@ implements OnClickListener { new BriarServiceConnection(); @Inject private BundleEncrypter bundleEncrypter; + private boolean restricted = false; private GroupId groupId = null; private Rating rating = UNRATED; private boolean read; @@ -83,6 +84,7 @@ implements OnClickListener { super.onCreate(null); Intent i = getIntent(); + restricted = i.getBooleanExtra("net.sf.briar.RESTRICTED", false); byte[] b = i.getByteArrayExtra("net.sf.briar.GROUP_ID"); if(b == null) throw new IllegalStateException(); groupId = new GroupId(b); @@ -325,11 +327,17 @@ implements OnClickListener { setResult(RESULT_NEXT); finish(); } else if(view == replyButton) { - // FIXME: Restricted/unrestricted - Intent i = new Intent(this, WriteGroupPostActivity.class); - i.putExtra("net.sf.briar.GROUP_ID", groupId.getBytes()); - i.putExtra("net.sf.briar.PARENT_ID", messageId.getBytes()); - startActivity(i); + if(restricted) { + Intent i = new Intent(this, WriteBlogPostActivity.class); + i.putExtra("net.sf.briar.GROUP_ID", groupId.getBytes()); + i.putExtra("net.sf.briar.PARENT_ID", messageId.getBytes()); + startActivity(i); + } else { + Intent i = new Intent(this, WriteGroupPostActivity.class); + i.putExtra("net.sf.briar.GROUP_ID", groupId.getBytes()); + i.putExtra("net.sf.briar.PARENT_ID", messageId.getBytes()); + startActivity(i); + } setResult(RESULT_REPLY); finish(); } @@ -361,7 +369,7 @@ implements OnClickListener { private void setRatingInUi(final Rating r) { runOnUiThread(new Runnable() { public void run() { - ReadGroupMessageActivity.this.rating = r; + rating = r; if(r == GOOD) { thumb.setImageResource(R.drawable.rating_good); thumb.setVisibility(VISIBLE); -- GitLab