diff --git a/CHANGELOG.md b/CHANGELOG.md
index 116cc307..f24146ee 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,11 @@
###Changelog
+####Version 0.2.2
+* Ability to take photos directly
+* Improved openPGP offline handling
+* Various bug fixes
+* Updated Translations
+
####Version 0.2.1
* Various bug fixes
* Updated Translations
diff --git a/res/menu/attachment_choices.xml b/res/menu/attachment_choices.xml
index 84e777b6..7e3ebbea 100644
--- a/res/menu/attachment_choices.xml
+++ b/res/menu/attachment_choices.xml
@@ -7,5 +7,7 @@
-
+
\ No newline at end of file
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index c3320b11..88376842 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -163,5 +163,6 @@
Löschen
Vorübergehend abschalten
Anschalten
+ Sprache aufzeichnen
\ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 040382f8..9841aa60 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -163,5 +163,6 @@
Delete
Temporarily disable
Enable
+ Record voice
\ No newline at end of file
diff --git a/src/eu/siacs/conversations/ui/ConversationActivity.java b/src/eu/siacs/conversations/ui/ConversationActivity.java
index ac9328ca..59c47fcf 100644
--- a/src/eu/siacs/conversations/ui/ConversationActivity.java
+++ b/src/eu/siacs/conversations/ui/ConversationActivity.java
@@ -66,11 +66,13 @@ public class ConversationActivity extends XmppActivity {
public static final int REQUEST_DECRYPT_PGP = 0x76783;
private static final int REQUEST_ATTACH_FILE_DIALOG = 0x48502;
private static final int REQUEST_IMAGE_CAPTURE = 0x33788;
+ private static final int REQUEST_RECORD_AUDIO = 0x46189;
private static final int REQUEST_SEND_PGP_IMAGE = 0x53883;
public static final int REQUEST_ENCRYPT_MESSAGE = 0x378018;
private static final int ATTACHMENT_CHOICE_CHOOSE_IMAGE = 0x92734;
private static final int ATTACHMENT_CHOICE_TAKE_PHOTO = 0x84123;
+ private static final int ATTACHMENT_CHOICE_RECORD_VOICE = 0x75291;
protected SlidingPaneLayout spl;
@@ -352,6 +354,9 @@ public class ConversationActivity extends XmppActivity {
attachFileIntent.setAction(Intent.ACTION_GET_CONTENT);
Intent chooser = Intent.createChooser(attachFileIntent, getString(R.string.attach_file));
startActivityForResult(chooser, REQUEST_ATTACH_FILE_DIALOG);
+ } else if (attachmentChoice==ATTACHMENT_CHOICE_RECORD_VOICE) {
+ Intent intent = new Intent(MediaStore.Audio.Media.RECORD_SOUND_ACTION);
+ startActivityForResult(intent, REQUEST_RECORD_AUDIO);
}
}
}
@@ -452,6 +457,9 @@ public class ConversationActivity extends XmppActivity {
case R.id.attach_take_picture:
attachFile(ATTACHMENT_CHOICE_TAKE_PHOTO);
break;
+ case R.id.attach_record_voice:
+ attachFile(ATTACHMENT_CHOICE_RECORD_VOICE);
+ break;
}
return false;
}
diff --git a/src/eu/siacs/conversations/ui/ConversationFragment.java b/src/eu/siacs/conversations/ui/ConversationFragment.java
index 5336b793..b0e9d79b 100644
--- a/src/eu/siacs/conversations/ui/ConversationFragment.java
+++ b/src/eu/siacs/conversations/ui/ConversationFragment.java
@@ -583,7 +583,7 @@ public class ConversationFragment extends Fragment {
ConversationActivity activity = (ConversationActivity) getActivity();
if (this.conversation != null) {
for (Message message : this.conversation.getMessages()) {
- if (message.getEncryption() == Message.ENCRYPTION_PGP) {
+ if ((message.getEncryption() == Message.ENCRYPTION_PGP)&&((message.getStatus() == Message.STATUS_RECIEVED)||(message.getStatus() == Message.STATUS_SEND))) {
decryptMessage(message);
break;
}
diff --git a/src/eu/siacs/conversations/xmpp/XmppConnection.java b/src/eu/siacs/conversations/xmpp/XmppConnection.java
index 3fc6385a..a04105a8 100644
--- a/src/eu/siacs/conversations/xmpp/XmppConnection.java
+++ b/src/eu/siacs/conversations/xmpp/XmppConnection.java
@@ -21,7 +21,6 @@ import java.util.HashSet;
import java.util.Hashtable;
import java.util.Iterator;
import java.util.List;
-import java.util.Map;
import java.util.Map.Entry;
import javax.net.ssl.SSLContext;
@@ -547,7 +546,8 @@ public class XmppConnection implements Runnable {
Log.d(LOGTAG,account.getJid()+": sending deprecated session");
IqPacket startSession = new IqPacket(IqPacket.TYPE_SET);
startSession.addChild("session","urn:ietf:params:xml:ns:xmpp-session"); //setContent("")
- this.sendIqPacket(startSession, null);
+ startSession.setId(nextRandomId());
+ this.sendPacket(startSession, null);
}
}
}