diff --git a/res/menu/conversation_button_context_secure_push.xml b/res/menu/conversation_button_context.xml similarity index 61% rename from res/menu/conversation_button_context_secure_push.xml rename to res/menu/conversation_button_context.xml index 7c60057cf2..ea69786157 100644 --- a/res/menu/conversation_button_context_secure_push.xml +++ b/res/menu/conversation_button_context.xml @@ -3,8 +3,13 @@ - - + + + \ No newline at end of file diff --git a/res/menu/conversation_button_context_insecure_push.xml b/res/menu/conversation_button_context_insecure_push.xml deleted file mode 100644 index 81dcf7419b..0000000000 --- a/res/menu/conversation_button_context_insecure_push.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/res/menu/conversation_button_context_secure_sms.xml b/res/menu/conversation_button_context_secure_sms.xml deleted file mode 100644 index 457505e7bd..0000000000 --- a/res/menu/conversation_button_context_secure_sms.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/res/values/strings.xml b/res/values/strings.xml index 8f4782d73f..85939a0043 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -787,8 +787,10 @@ Send TextSecure message - Send unencrypted SMS - Send encrypted SMS + Send secure SMS + Send insecure SMS + Send secure MMS + Send insecure MMS Call diff --git a/src/org/thoughtcrime/securesms/ConversationActivity.java b/src/org/thoughtcrime/securesms/ConversationActivity.java index e6a6257a37..b3acf3a357 100644 --- a/src/org/thoughtcrime/securesms/ConversationActivity.java +++ b/src/org/thoughtcrime/securesms/ConversationActivity.java @@ -322,14 +322,24 @@ public class ConversationActivity extends PassphraseRequiredSherlockFragmentActi Recipient primaryRecipient = getRecipients() == null ? null : getRecipients().getPrimaryRecipient(); boolean hasSession = Session.hasSession(this, masterSecret, primaryRecipient); - int context; + getMenuInflater().inflate(R.menu.conversation_button_context, menu); - if (isPushDestination && hasSession) context = R.menu.conversation_button_context_secure_push; - else if (isPushDestination) context = R.menu.conversation_button_context_insecure_push; - else if (hasSession) context = R.menu.conversation_button_context_secure_sms; - else return; + if (attachmentManager.isAttachmentPresent()) { + menu.removeItem(R.id.menu_context_send_encrypted_sms); + menu.removeItem(R.id.menu_context_send_unencrypted_sms); + } else { + menu.removeItem(R.id.menu_context_send_encrypted_mms); + menu.removeItem(R.id.menu_context_send_unencrypted_mms); + } - getMenuInflater().inflate(context, menu); + if (!isPushDestination) { + menu.removeItem(R.id.menu_context_send_push); + } + + if (!hasSession) { + menu.removeItem(R.id.menu_context_send_encrypted_mms); + menu.removeItem(R.id.menu_context_send_encrypted_sms); + } } } @@ -337,7 +347,9 @@ public class ConversationActivity extends PassphraseRequiredSherlockFragmentActi public boolean onContextItemSelected(android.view.MenuItem item) { switch (item.getItemId()) { case R.id.menu_context_send_push: sendMessage(false, false); return true; + case R.id.menu_context_send_encrypted_mms: case R.id.menu_context_send_encrypted_sms: sendMessage(false, true); return true; + case R.id.menu_context_send_unencrypted_mms: case R.id.menu_context_send_unencrypted_sms: sendMessage(true, true); return true; }