Change summary
res/layout/fragment_conversation.xml | 12 +++--
src/de/gultsch/chat/services/XmppConnectionService.java | 22 ++++++-----
2 files changed, 19 insertions(+), 15 deletions(-)
Detailed changes
@@ -45,14 +45,16 @@
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/textsend"
- android:layout_below="@+id/info_box"
android:layout_alignParentLeft="true"
+ android:layout_below="@+id/info_box"
android:background="#e5e5e5"
- tools:listitem="@layout/message_sent"
android:divider="@null"
- android:dividerHeight="0dp"
- android:transcriptMode="alwaysScroll"
- android:listSelector="@android:color/transparent">
+ android:dividerHeight="0dp"
+ android:listSelector="@android:color/transparent"
+ android:transcriptMode="alwaysScroll"
+ tools:listitem="@layout/message_sent"
+ android:stackFromBottom="true">
+
</ListView>
<LinearLayout
android:id="@+id/info_box"
@@ -210,16 +210,18 @@ public class XmppConnectionService extends Service {
} else if (show.getContent().equals("dnd")) {
contact.updatePresence(fromParts[1], Presences.DND);
}
- Element x = packet.findChild("x");
- if ((x != null)
- && (x.getAttribute("xmlns").equals("jabber:x:signed"))) {
- try {
- Log.d(LOGTAG,"pgp signature for contact" +packet.getAttribute("from"));
- contact.setPgpKeyId(getPgpEngine().fetchKeyId(packet.findChild("status")
- .getContent(), x.getContent()));
- databaseBackend.updateContact(contact);
- } catch (OpenPgpException e) {
- Log.d(LOGTAG,"faulty pgp. just ignore");
+ PgpEngine pgp = getPgpEngine();
+ if (pgp!=null) {
+ Element x = packet.findChild("x");
+ if ((x != null)
+ && (x.getAttribute("xmlns").equals("jabber:x:signed"))) {
+ try {
+ Log.d(LOGTAG,"pgp signature for contact" +packet.getAttribute("from"));
+ contact.setPgpKeyId(pgp.fetchKeyId(packet.findChild("status")
+ .getContent(), x.getContent()));
+ } catch (OpenPgpException e) {
+ Log.d(LOGTAG,"faulty pgp. just ignore");
+ }
}
}
databaseBackend.updateContact(contact);