aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorChristian Schneppe <christian@pix-art.de>2018-05-02 21:23:02 +0200
committerChristian Schneppe <christian@pix-art.de>2018-05-02 21:23:02 +0200
commit78b8918524aa065165c0c382440a287c40338348 (patch)
tree864cbbd2134dcb3c11a3dc2c286e886cb1728273 /src
parent13ac701df5221e8c6cc1e0af532f96a17fdd6879 (diff)
added 'view conversation' to context menu
Diffstat (limited to 'src')
-rw-r--r--src/main/java/de/pixart/messenger/ui/SearchActivity.java13
-rw-r--r--src/main/res/menu/search_result_context.xml3
-rw-r--r--src/main/res/values/strings.xml1
3 files changed, 14 insertions, 3 deletions
diff --git a/src/main/java/de/pixart/messenger/ui/SearchActivity.java b/src/main/java/de/pixart/messenger/ui/SearchActivity.java
index 7c43bf37c..298bca6c0 100644
--- a/src/main/java/de/pixart/messenger/ui/SearchActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/SearchActivity.java
@@ -129,6 +129,9 @@ public class SearchActivity extends XmppActivity implements TextWatcher, OnSearc
final Message message = selectedMessageReference.get();
if (message != null) {
switch (item.getItemId()) {
+ case R.id.open_conversation:
+ switchToConversation(wrap(message.getConversation()));
+ break;
case R.id.share_with:
ShareUtil.share(this, message);
break;
@@ -140,6 +143,7 @@ public class SearchActivity extends XmppActivity implements TextWatcher, OnSearc
break;
case R.id.quote_message:
quote(message);
+ break;
}
}
return super.onContextItemSelected(item);
@@ -148,17 +152,20 @@ public class SearchActivity extends XmppActivity implements TextWatcher, OnSearc
private void quote(Message message) {
String text = MessageUtils.prepareQuote(message);
final Conversational conversational = message.getConversation();
+ switchToConversationAndQuote(wrap(message.getConversation()), text);
+ }
+
+ private Conversation wrap(Conversational conversational) {
final Conversation conversation;
if (conversational instanceof Conversation) {
- conversation = (Conversation) conversational;
+ return (Conversation) conversational;
} else {
- conversation = xmppConnectionService.findOrCreateConversation(conversational.getAccount(),
+ return xmppConnectionService.findOrCreateConversation(conversational.getAccount(),
conversational.getJid(),
conversational.getMode() == Conversational.MODE_MULTI,
true,
true);
}
- switchToConversationAndQuote(conversation, text);
}
@Override
diff --git a/src/main/res/menu/search_result_context.xml b/src/main/res/menu/search_result_context.xml
index 9d68233d4..cea8e6cf7 100644
--- a/src/main/res/menu/search_result_context.xml
+++ b/src/main/res/menu/search_result_context.xml
@@ -30,6 +30,9 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
+ android:id="@+id/open_conversation"
+ android:title="@string/view_conversation" />
+ <item
android:id="@+id/share_with"
android:title="@string/share_with" />
<item
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index e8edc5d50..281374208 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -783,4 +783,5 @@
<string name="no_microphone_permission">Conversations needs access to the microphone</string>
<string name="search_messages">Search messages</string>
<string name="gif">GIF</string>
+ <string name="view_conversation">View conversation</string>
</resources>