aboutsummaryrefslogtreecommitdiffstats
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/eu/siacs/conversations/crypto/axolotl/AxolotlService.java6
-rw-r--r--src/main/java/eu/siacs/conversations/services/NotificationService.java4
-rw-r--r--src/main/java/eu/siacs/conversations/ui/XmppActivity.java2
-rw-r--r--src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java1
-rw-r--r--src/main/java/eu/siacs/conversations/utils/DNSHelper.java47
-rw-r--r--src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java35
-rw-r--r--src/main/java/eu/siacs/conversations/xmpp/stanzas/IqPacket.java2
-rw-r--r--src/main/res/layout/conversation_list_row.xml2
-rw-r--r--src/main/res/values-bg/strings.xml9
-rw-r--r--src/main/res/values-ca/strings.xml1
-rw-r--r--src/main/res/values-cs/strings.xml1
-rw-r--r--src/main/res/values-de/strings.xml7
-rw-r--r--src/main/res/values-el/strings.xml1
-rw-r--r--src/main/res/values-es/strings.xml9
-rw-r--r--src/main/res/values-eu/strings.xml7
-rw-r--r--src/main/res/values-fr/strings.xml1
-rw-r--r--src/main/res/values-id/strings.xml1
-rw-r--r--src/main/res/values-it/strings.xml1
-rw-r--r--src/main/res/values-ja/strings.xml1
-rw-r--r--src/main/res/values-ko/strings.xml1
-rw-r--r--src/main/res/values-nl/strings.xml1
-rw-r--r--src/main/res/values-pl/strings.xml1
-rw-r--r--src/main/res/values-ru/strings.xml1
-rw-r--r--src/main/res/values-sk/strings.xml1
-rw-r--r--src/main/res/values-sr/strings.xml7
-rw-r--r--src/main/res/values-sv/strings.xml13
-rw-r--r--src/main/res/values-v21/themes.xml4
-rw-r--r--src/main/res/values-zh-rCN/strings.xml1
-rw-r--r--src/main/res/values-zh-rTW/strings.xml1
-rw-r--r--src/main/res/values/colors.xml5
-rw-r--r--src/main/res/values/strings.xml4
-rw-r--r--src/main/res/values/themes.xml4
32 files changed, 126 insertions, 56 deletions
diff --git a/src/main/java/eu/siacs/conversations/crypto/axolotl/AxolotlService.java b/src/main/java/eu/siacs/conversations/crypto/axolotl/AxolotlService.java
index 17d911b44..2ce62c9ad 100644
--- a/src/main/java/eu/siacs/conversations/crypto/axolotl/AxolotlService.java
+++ b/src/main/java/eu/siacs/conversations/crypto/axolotl/AxolotlService.java
@@ -323,14 +323,14 @@ public class AxolotlService {
mXmppConnectionService.sendIqPacket(account, packet, new OnIqPacketReceived() {
@Override
public void onIqPacketReceived(Account account, IqPacket packet) {
- if (packet.getType() == IqPacket.TYPE.RESULT) {
+ if (packet.getType() == IqPacket.TYPE.TIMEOUT) {
+ Log.d(Config.LOGTAG, getLogprefix(account) + "Timeout received while retrieving own Device Ids.");
+ } else {
Element item = mXmppConnectionService.getIqParser().getItem(packet);
Set<Integer> deviceIds = mXmppConnectionService.getIqParser().deviceIds(item);
if (!deviceIds.contains(getOwnDeviceId())) {
publishOwnDeviceId(deviceIds);
}
- } else {
- Log.d(Config.LOGTAG, getLogprefix(account) + "Error received while retrieving Device Ids" + packet.findChild("error"));
}
}
});
diff --git a/src/main/java/eu/siacs/conversations/services/NotificationService.java b/src/main/java/eu/siacs/conversations/services/NotificationService.java
index 3b8da6b39..2e13964ed 100644
--- a/src/main/java/eu/siacs/conversations/services/NotificationService.java
+++ b/src/main/java/eu/siacs/conversations/services/NotificationService.java
@@ -178,7 +178,7 @@ public class NotificationService {
}
private void setNotificationColor(final Builder mBuilder) {
- mBuilder.setColor(mXmppConnectionService.getResources().getColor(R.color.green500));
+ mBuilder.setColor(mXmppConnectionService.getResources().getColor(R.color.primary));
}
private void updateNotification(final boolean notify) {
@@ -559,4 +559,4 @@ public class NotificationService {
mBuilder.setContentIntent(resultPendingIntent);
mNotificationManager.notify(ERROR_NOTIFICATION_ID, mBuilder.build());
}
-} \ No newline at end of file
+}
diff --git a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java
index 7734dc116..aa5812b6a 100644
--- a/src/main/java/eu/siacs/conversations/ui/XmppActivity.java
+++ b/src/main/java/eu/siacs/conversations/ui/XmppActivity.java
@@ -354,7 +354,7 @@ public abstract class XmppActivity extends Activity {
mColorRed = getResources().getColor(R.color.red800);
mColorOrange = getResources().getColor(R.color.orange500);
mColorGreen = getResources().getColor(R.color.green500);
- mPrimaryColor = getResources().getColor(R.color.green500);
+ mPrimaryColor = getResources().getColor(R.color.primary);
mPrimaryBackgroundColor = getResources().getColor(R.color.grey50);
mSecondaryBackgroundColor = getResources().getColor(R.color.grey200);
this.mTheme = findTheme();
diff --git a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java
index 1dbf1b101..461127506 100644
--- a/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java
+++ b/src/main/java/eu/siacs/conversations/ui/adapter/MessageAdapter.java
@@ -323,6 +323,7 @@ public class MessageAdapter extends ArrayAdapter<Message> {
}
viewHolder.messageBody.setTextColor(this.getMessageTextColor(darkBackground, true));
viewHolder.messageBody.setLinkTextColor(this.getMessageTextColor(darkBackground,true));
+ viewHolder.messageBody.setHighlightColor(activity.getResources().getColor(darkBackground ? R.color.grey800 : R.color.grey500));
viewHolder.messageBody.setTypeface(null, Typeface.NORMAL);
viewHolder.messageBody.setTextIsSelectable(true);
}
diff --git a/src/main/java/eu/siacs/conversations/utils/DNSHelper.java b/src/main/java/eu/siacs/conversations/utils/DNSHelper.java
index 4d0dd3dab..889206e0b 100644
--- a/src/main/java/eu/siacs/conversations/utils/DNSHelper.java
+++ b/src/main/java/eu/siacs/conversations/utils/DNSHelper.java
@@ -1,13 +1,21 @@
package eu.siacs.conversations.utils;
+import android.annotation.TargetApi;
+import android.content.Context;
+import android.net.ConnectivityManager;
+import android.net.LinkProperties;
+import android.net.Network;
+import android.os.Build;
import android.os.Bundle;
import android.util.Log;
import java.io.IOException;
import java.net.InetAddress;
import java.net.SocketTimeoutException;
+import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.List;
import java.util.Random;
import java.util.TreeMap;
import java.util.regex.Pattern;
@@ -35,17 +43,42 @@ public class DNSHelper {
protected static Client client = new Client();
- public static Bundle getSRVRecord(final Jid jid) throws IOException {
+ public static Bundle getSRVRecord(final Jid jid, Context context) throws IOException {
final String host = jid.getDomainpart();
- String dns[] = client.findDNS();
- for (int i = 0; i < dns.length; ++i) {
- InetAddress ip = InetAddress.getByName(dns[i]);
- Bundle b = queryDNS(host, ip);
- if (b.containsKey("values") || i == dns.length - 1) {
+ final List<InetAddress> servers = Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP ? getDnsServers(context) : getDnsServersPreLolipop();
+ Bundle b = null;
+ for(InetAddress server : servers) {
+ b = queryDNS(host, server);
+ if (b.containsKey("values")) {
return b;
}
}
- return null;
+ return b;
+ }
+
+ @TargetApi(21)
+ private static List<InetAddress> getDnsServers(Context context) {
+ List<InetAddress> servers = new ArrayList<>();
+ ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
+ Network[] networks = connectivityManager.getAllNetworks();
+ for(int i = 0; i < networks.length; ++i) {
+ LinkProperties linkProperties = connectivityManager.getLinkProperties(networks[i]);
+ servers.addAll(linkProperties.getDnsServers());
+ }
+ return servers.size() > 0 ? servers : getDnsServersPreLolipop();
+ }
+
+ private static List<InetAddress> getDnsServersPreLolipop() {
+ List<InetAddress> servers = new ArrayList<>();
+ String[] dns = client.findDNS();
+ for(int i = 0; i < dns.length; ++i) {
+ try {
+ servers.add(InetAddress.getByName(dns[i]));
+ } catch (UnknownHostException e) {
+ //ignore
+ }
+ }
+ return servers;
}
public static Bundle queryDNS(String host, InetAddress dnsServer) {
diff --git a/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java b/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java
index bb0c3987b..64507bd67 100644
--- a/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java
+++ b/src/main/java/eu/siacs/conversations/xmpp/XmppConnection.java
@@ -159,7 +159,7 @@ public class XmppConnection implements Runnable {
throw new UnknownHostException();
}
} else {
- final Bundle result = DNSHelper.getSRVRecord(account.getServer());
+ final Bundle result = DNSHelper.getSRVRecord(account.getServer(),mXmppConnectionService);
if (result == null) {
throw new IOException("unhandled exception in DNS resolver");
}
@@ -704,8 +704,11 @@ public class XmppConnection implements Runnable {
this.sendUnmodifiedIqPacket(iq, new OnIqPacketReceived() {
@Override
public void onIqPacketReceived(final Account account, final IqPacket packet) {
+ if (packet.getType() == IqPacket.TYPE.TIMEOUT) {
+ return;
+ }
final Element bind = packet.findChild("bind");
- if (bind != null) {
+ if (bind != null && packet.getType() == IqPacket.TYPE.RESULT) {
final Element jid = bind.findChild("jid");
if (jid != null && jid.getContent() != null) {
try {
@@ -719,11 +722,11 @@ public class XmppConnection implements Runnable {
sendPostBindInitialization();
}
} else {
- Log.d(Config.LOGTAG,account.getJid()+": disconnecting because of bind failure");
+ Log.d(Config.LOGTAG, account.getJid() + ": disconnecting because of bind failure");
disconnect(true);
}
} else {
- Log.d(Config.LOGTAG,account.getJid()+": disconnecting because of bind failure");
+ Log.d(Config.LOGTAG, account.getJid() + ": disconnecting because of bind failure");
disconnect(true);
}
}
@@ -748,7 +751,7 @@ public class XmppConnection implements Runnable {
for(OnIqPacketReceived callback : callbacks) {
callback.onIqPacketReceived(account,failurePacket);
}
- Log.d(Config.LOGTAG,account.getJid().toBareJid()+": done clearing iq callbacks. "+this.packetCallbacks.size()+" left");
+ Log.d(Config.LOGTAG, account.getJid().toBareJid() + ": done clearing iq callbacks. " + this.packetCallbacks.size() + " left");
}
private void sendStartSession() {
@@ -757,7 +760,9 @@ public class XmppConnection implements Runnable {
this.sendUnmodifiedIqPacket(startSession, new OnIqPacketReceived() {
@Override
public void onIqPacketReceived(Account account, IqPacket packet) {
- if (packet.getType() == IqPacket.TYPE.RESULT) {
+ if (packet.getType() == IqPacket.TYPE.TIMEOUT) {
+ return;
+ } else if (packet.getType() == IqPacket.TYPE.RESULT) {
sendPostBindInitialization();
} else {
Log.d(Config.LOGTAG, account.getJid().toBareJid() + ": could not init sessions");
@@ -1031,15 +1036,23 @@ public class XmppConnection implements Runnable {
if (tagWriter.isActive()) {
tagWriter.finish();
try {
- while (!tagWriter.finished() && socket.isConnected()) {
- Log.d(Config.LOGTAG, "not yet finished");
- Thread.sleep(100);
+ int i = 0;
+ boolean warned = false;
+ while (!tagWriter.finished() && socket.isConnected() && i <= 10) {
+ if (!warned) {
+ Log.d(Config.LOGTAG, account.getJid().toBareJid()+": waiting for tag writer to finish");
+ warned = true;
+ }
+ Thread.sleep(200);
+ i++;
+ }
+ if (warned) {
+ Log.d(Config.LOGTAG,account.getJid().toBareJid()+": tag writer has finished");
}
tagWriter.writeTag(Tag.end("stream:stream"));
socket.close();
} catch (final IOException e) {
- Log.d(Config.LOGTAG,
- "io exception during disconnect");
+ Log.d(Config.LOGTAG,"io exception during disconnect");
} catch (final InterruptedException e) {
Log.d(Config.LOGTAG, "interrupted");
}
diff --git a/src/main/java/eu/siacs/conversations/xmpp/stanzas/IqPacket.java b/src/main/java/eu/siacs/conversations/xmpp/stanzas/IqPacket.java
index 4d16f2e5d..302dc78e8 100644
--- a/src/main/java/eu/siacs/conversations/xmpp/stanzas/IqPacket.java
+++ b/src/main/java/eu/siacs/conversations/xmpp/stanzas/IqPacket.java
@@ -52,6 +52,8 @@ public class IqPacket extends AbstractAcknowledgeableStanza {
return TYPE.SET;
case "get":
return TYPE.GET;
+ case "timeout":
+ return TYPE.TIMEOUT;
default:
return TYPE.INVALID;
}
diff --git a/src/main/res/layout/conversation_list_row.xml b/src/main/res/layout/conversation_list_row.xml
index ddd88bc33..575647f0a 100644
--- a/src/main/res/layout/conversation_list_row.xml
+++ b/src/main/res/layout/conversation_list_row.xml
@@ -7,7 +7,7 @@
<View
android:layout_width="fill_parent"
android:layout_height="fill_parent"
- android:background="@color/green500"/>
+ android:background="@color/primary"/>
<FrameLayout
android:id="@+id/swipeable_item"
diff --git a/src/main/res/values-bg/strings.xml b/src/main/res/values-bg/strings.xml
index 57e63e423..88ba9b975 100644
--- a/src/main/res/values-bg/strings.xml
+++ b/src/main/res/values-bg/strings.xml
@@ -76,6 +76,7 @@
<string name="delete_messages">Изтриване на съобщенията</string>
<string name="also_end_conversation">Този разговор да приключи след това</string>
<string name="choose_presence">Изберете присъствие за контакта</string>
+ <string name="send_unencrypted_message">Изпр. на нешифр. съобщение</string>
<string name="send_otr_message">Изпр. на съобщение, шифр. чрез OTP</string>
<string name="send_omemo_message">Изпр. на съобщение, шифр. чрез OMEMO</string>
<string name="send_pgp_message">Изпр. на съобщение, шифр. чрез OpenPGP</string>
@@ -149,6 +150,7 @@
<string name="account_status_regis_not_sup">Сървърът не поддържа регистриране</string>
<string name="account_status_security_error">Грешка в сигурността</string>
<string name="account_status_incompatible_server">Несъвместим сървър</string>
+ <string name="encryption_choice_unencrypted">Нешифровано</string>
<string name="encryption_choice_otr">OTR</string>
<string name="encryption_choice_pgp">OpenPGP</string>
<string name="encryption_choice_omemo">OMEMO</string>
@@ -186,7 +188,8 @@
<string name="server_info_blocking">XEP-0191: Команда за блокиране</string>
<string name="server_info_roster_version">XEP-0237: Поддържане на версия на списъка</string>
<string name="server_info_stream_management">XEP-0198: Управление на потоците</string>
- <string name="server_info_pep">XEP-0163: PEP (Аватари)</string>
+ <string name="server_info_pep">XEP-0163: PEP (Аватари / OMEMO)</string>
+ <string name="server_info_http_upload">XEP-0363: Качване на файл през HTTP</string>
<string name="server_info_available">налично</string>
<string name="server_info_unavailable">не е налично</string>
<string name="missing_public_keys">Липсват обявления за публичен ключ</string>
@@ -366,6 +369,8 @@
<string name="purge_key">Изтриване на ключа</string>
<string name="purge_key_desc_part1">Сигурни ли сте, че искате да изтриете този ключ?</string>
<string name="purge_key_desc_part2">След това той ще бъде необратимо приет за грешен и повече няма да можете да създавате сесии с него.</string>
+ <string name="error_no_keys_to_trust">Няма ключове, които могат да бъдат използвани за този контакт. Ако сте изчистили някои от ключовете му, то той трябва да създаде нови.</string>
+ <string name="error_trustkeys_title">Грешка</string>
<string name="fetching_history_from_server">Получаване на историята от сървъра</string>
<string name="no_more_history_on_server">Няма повече история на сървъра</string>
<string name="updating">Актуализиране...</string>
@@ -474,4 +479,6 @@
<string name="download_failed_server_not_found">Неуспешно сваляне: Сървърът не е открит</string>
<string name="download_failed_file_not_found">Неуспешно сваляне: Файлът не е открит</string>
<string name="download_failed_could_not_connect">Неуспешно сваляне: Неуспешна връзка със сървъра</string>
+ <string name="pref_use_white_background">Използване на бял фон</string>
+ <string name="pref_use_white_background_summary">Показване на получените съобщения с черен текст на бял фон</string>
</resources>
diff --git a/src/main/res/values-ca/strings.xml b/src/main/res/values-ca/strings.xml
index cfb2a8f34..bfa73a47b 100644
--- a/src/main/res/values-ca/strings.xml
+++ b/src/main/res/values-ca/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Ordre de bloqueix</string>
<string name="server_info_roster_version">XEP-0237: Plantilla de les versions</string>
<string name="server_info_stream_management">XEP-0198: Gestió de la transmissió</string>
- <string name="server_info_pep">XEP-0163: PEP(Avatars)</string>
<string name="server_info_available">Disponible</string>
<string name="server_info_unavailable">No disponible</string>
<string name="missing_public_keys">Clau pública d\'invitació perduda</string>
diff --git a/src/main/res/values-cs/strings.xml b/src/main/res/values-cs/strings.xml
index 46b90ca8e..a1eae713c 100644
--- a/src/main/res/values-cs/strings.xml
+++ b/src/main/res/values-cs/strings.xml
@@ -186,7 +186,6 @@
<string name="server_info_blocking">XEP-0191: Příkaz blokování</string>
<string name="server_info_roster_version">XEP-0237: Verzování seznamu</string>
<string name="server_info_stream_management">XEP-0198: Nastavení proudu</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">dostupný</string>
<string name="server_info_unavailable">nedostupný</string>
<string name="missing_public_keys">Chybí oznámení o veřejném klíči</string>
diff --git a/src/main/res/values-de/strings.xml b/src/main/res/values-de/strings.xml
index 553f44411..b6e345dfb 100644
--- a/src/main/res/values-de/strings.xml
+++ b/src/main/res/values-de/strings.xml
@@ -188,8 +188,8 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatare)</string>
- <string name="server_info_http_upload">XEP-xxxx: HTTP File Upload</string>
+ <string name="server_info_pep">XEP-0163: PEP (Avatare/OMEMO)</string>
+ <string name="server_info_http_upload">XEP-0363: HTTP File Upload</string>
<string name="server_info_available">ja</string>
<string name="server_info_unavailable">nein</string>
<string name="missing_public_keys">Öffentlicher Schlüssel fehlt</string>
@@ -369,6 +369,7 @@
<string name="purge_key">Schlüssel löschen</string>
<string name="purge_key_desc_part1">Soll dieser Schlüssel gelöscht werden?</string>
<string name="purge_key_desc_part2">Dieser Vorgang kann nicht rückgängig gemacht werden und es kann nie wieder eine Verbindung mit diesem Schlüssel hergestellt werden.</string>
+ <string name="error_no_keys_to_trust">Es sind keine Schlüssel für diesen Kontakt verfügbar. Falls diese gelöscht wurden, müssen diese neu erstellt werden.</string>
<string name="error_trustkeys_title">Fehler</string>
<string name="fetching_history_from_server">Lade Chatverlauf…</string>
<string name="no_more_history_on_server">Keine weiteren Nachrichten vorhanden</string>
@@ -479,4 +480,6 @@
<string name="download_failed_server_not_found">Download fehlgeschlagen: Server nicht gefunden</string>
<string name="download_failed_file_not_found">Download fehlgeschlagen: Datei nicht gefunden</string>
<string name="download_failed_could_not_connect">Download fehlgeschlagen: keine Verbindung zum Host</string>
+ <string name="pref_use_white_background">Weißen Hintergrund benutzen</string>
+ <string name="pref_use_white_background_summary">Empfangene Nachrichten als schwarzen Text auf weißem Hintergrund anzeigen</string>
</resources>
diff --git a/src/main/res/values-el/strings.xml b/src/main/res/values-el/strings.xml
index 49f1b796f..a9ae5cbda 100644
--- a/src/main/res/values-el/strings.xml
+++ b/src/main/res/values-el/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Εντολή αποκλεισμού</string>
<string name="server_info_roster_version">XEP-0237: Διατήρηση εκδόσεων λίστας επαφών</string>
<string name="server_info_stream_management">XEP-0198: Διαχείριση ροών</string>
- <string name="server_info_pep">XEP-0163: Πρωτόκολλο προσωπικών συμβάντων (εικόνες προφίλ)</string>
<string name="server_info_available">διαθέσιμος</string>
<string name="server_info_unavailable">μη διαθέσιμος</string>
<string name="missing_public_keys">Ελλειπείς ανακοινώσεις δημοσίων κλειδιών</string>
diff --git a/src/main/res/values-es/strings.xml b/src/main/res/values-es/strings.xml
index ca7c0c63d..ff11ead35 100644
--- a/src/main/res/values-es/strings.xml
+++ b/src/main/res/values-es/strings.xml
@@ -76,6 +76,7 @@
<string name="delete_messages">Borrar mensajes</string>
<string name="also_end_conversation">Además, terminar esta conversación</string>
<string name="choose_presence">Selecciona recurso del contacto</string>
+ <string name="send_unencrypted_message">Enviar mensaje sin cifrar</string>
<string name="send_otr_message">Enviar mensaje cifrado con OTR</string>
<string name="send_omemo_message">Enviar mensaje cifrado con OMEMO </string>
<string name="send_pgp_message">Enviar mensaje cifrado con OpenPGP</string>
@@ -149,6 +150,7 @@
<string name="account_status_regis_not_sup">El servidor no soporta registros</string>
<string name="account_status_security_error">Error de seguridad</string>
<string name="account_status_incompatible_server">Servidor incompatible</string>
+ <string name="encryption_choice_unencrypted">Sin cifrado</string>
<string name="encryption_choice_otr">OTR</string>
<string name="encryption_choice_pgp">OpenPGP</string>
<string name="encryption_choice_omemo">OMEMO</string>
@@ -186,7 +188,8 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
+ <string name="server_info_pep">XEP-0163: PEP (Avatars / OMEMO)</string>
+ <string name="server_info_http_upload">XEP-0363: HTTP File Upload</string>
<string name="server_info_available">Sí</string>
<string name="server_info_unavailable">No</string>
<string name="missing_public_keys">Se han perdido las claves de anuncio públicas</string>
@@ -366,6 +369,8 @@
<string name="purge_key">Eliminar clave</string>
<string name="purge_key_desc_part1">¿Estás seguro de que quieres eliminar esta clave?</string>
<string name="purge_key_desc_part2">Esto será irreversible y nunca podrás iniciar sesión con esta clave de nuevo.</string>
+ <string name="error_no_keys_to_trust">No hay claves usables disponibles para este contacto. Si has eliminado alguna de sus claves, tus contactos necesitarán generar nuevas claves.</string>
+ <string name="error_trustkeys_title">Error</string>
<string name="fetching_history_from_server">Buscando historial en el servidor</string>
<string name="no_more_history_on_server">No hay más historial en el servidor</string>
<string name="updating">Actualizando…</string>
@@ -474,4 +479,6 @@
<string name="download_failed_server_not_found">Error al descargar: Servidor no encontrado</string>
<string name="download_failed_file_not_found">Error al descargar: Archivo no encontrado</string>
<string name="download_failed_could_not_connect">Error al descargar: No se ha podido conectar con el servidor</string>
+ <string name="pref_use_white_background">Usar fondo blanco</string>
+ <string name="pref_use_white_background_summary">Mostrar mensajes recibidos en texto negro con fondo blanco</string>
</resources>
diff --git a/src/main/res/values-eu/strings.xml b/src/main/res/values-eu/strings.xml
index 656dd6d51..9c99d7cf7 100644
--- a/src/main/res/values-eu/strings.xml
+++ b/src/main/res/values-eu/strings.xml
@@ -76,6 +76,7 @@
<string name="delete_messages">Mezuak ezabatu</string>
<string name="also_end_conversation">Elkarrizketa hau jarraian amaitu</string>
<string name="choose_presence">Hautatu agerpena kontaktuarentzat</string>
+ <string name="send_unencrypted_message">Enkriptatu gabeko mezua bidali</string>
<string name="send_otr_message">OTRz enkriptatutako mezua bidali</string>
<string name="send_omemo_message">OMEMOz enkriptatutako mezua bidali</string>
<string name="send_pgp_message">OpenPGPz enkriptatutako mezua bidali</string>
@@ -149,6 +150,7 @@
<string name="account_status_regis_not_sup">Zerbitzariak ez du erregistratzea onartzen</string>
<string name="account_status_security_error">Segurtasun akatsa</string>
<string name="account_status_incompatible_server">Zerbitzari ez bateragarria</string>
+ <string name="encryption_choice_unencrypted">Enkriptatu gabe</string>
<string name="encryption_choice_otr">OTR</string>
<string name="encryption_choice_pgp">OpenPGP</string>
<string name="encryption_choice_omemo">OMEMO</string>
@@ -186,7 +188,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Profileko argazkiak)</string>
<string name="server_info_available">eskuragarri</string>
<string name="server_info_unavailable">ez eskuragarri</string>
<string name="missing_public_keys">Gako publikoen iragarpenak faltan</string>
@@ -366,6 +367,8 @@
<string name="purge_key">Gakoa purgatu</string>
<string name="purge_key_desc_part1">Ziur al zaude gako hau purgatu nahi duzulaz?</string>
<string name="purge_key_desc_part2">Modu itzulezinean arriskutsutzat hartuko da, eta ezingo duzu gakoarekin berriro saio berri bat sortu.</string>
+ <string name="error_no_keys_to_trust">Kontaktu honetarako gako erabilgarririk ez dago. Bere gakoak purgatu badituzu, berri batzuk sortu behar dituzte.</string>
+ <string name="error_trustkeys_title">Akatsa</string>
<string name="fetching_history_from_server">Mezuak zerbitzaritik eskuratzen</string>
<string name="no_more_history_on_server">Mezu gehiagorik ez zerbitzarian</string>
<string name="updating">Eguneratzen...</string>
@@ -474,4 +477,6 @@
<string name="download_failed_server_not_found">Deskargak huts egin du: zerbitzaria ez da aurkitu</string>
<string name="download_failed_file_not_found">Deskargak huts egin du: fitxategia ez da aurkitu</string>
<string name="download_failed_could_not_connect">Deskargak huts egin du: ezin izan da ostalarira konektatu</string>
+ <string name="pref_use_white_background">Atzeko-planoan kolore zuria erabili</string>
+ <string name="pref_use_white_background_summary">Jasotako mezuak testu beltza atzeko-plano zuri baten gainean bezala erakutsi</string>
</resources>
diff --git a/src/main/res/values-fr/strings.xml b/src/main/res/values-fr/strings.xml
index 167a6d8d3..643bfd103 100644
--- a/src/main/res/values-fr/strings.xml
+++ b/src/main/res/values-fr/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">Gestion des flux</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">disponible</string>
<string name="server_info_unavailable">indisponible</string>
<string name="missing_public_keys">Aucune annonce de clef publique</string>
diff --git a/src/main/res/values-id/strings.xml b/src/main/res/values-id/strings.xml
index 61b8c2964..a016b704b 100644
--- a/src/main/res/values-id/strings.xml
+++ b/src/main/res/values-id/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">tersedia</string>
<string name="server_info_unavailable">tidak tersedia</string>
<string name="missing_public_keys">Pemberitahuan kunci publik tidak ditemukan</string>
diff --git a/src/main/res/values-it/strings.xml b/src/main/res/values-it/strings.xml
index 5c8e3aebb..2376285b0 100644
--- a/src/main/res/values-it/strings.xml
+++ b/src/main/res/values-it/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">disponibile</string>
<string name="server_info_unavailable">non disponibile</string>
<string name="missing_public_keys">Annuncio chiave pubblica non effettuato</string>
diff --git a/src/main/res/values-ja/strings.xml b/src/main/res/values-ja/strings.xml
index 7bec1334d..adba1e983 100644
--- a/src/main/res/values-ja/strings.xml
+++ b/src/main/res/values-ja/strings.xml
@@ -186,7 +186,6 @@
<string name="server_info_blocking">XEP-0191: ブロッキング コマンド</string>
<string name="server_info_roster_version">XEP-0237: 名簿バージョニング</string>
<string name="server_info_stream_management">XEP-0198: ストリーム管理</string>
- <string name="server_info_pep">XEP-0163: 個人イベントプロトコル (アバター)</string>
<string name="server_info_available">利用可能</string>
<string name="server_info_unavailable">利用不可</string>
<string name="missing_public_keys">公開鍵の通知がありません</string>
diff --git a/src/main/res/values-ko/strings.xml b/src/main/res/values-ko/strings.xml
index 40ec19098..1ce1cd43d 100644
--- a/src/main/res/values-ko/strings.xml
+++ b/src/main/res/values-ko/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command </string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning </string>
<string name="server_info_stream_management">XEP-0198: Stream Management </string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars) </string>
<string name="server_info_available">가능 </string>
<string name="server_info_unavailable">불가 </string>
<string name="missing_public_keys">공개 키 선언 누락 </string>
diff --git a/src/main/res/values-nl/strings.xml b/src/main/res/values-nl/strings.xml
index 57ab13b59..a44dbf511 100644
--- a/src/main/res/values-nl/strings.xml
+++ b/src/main/res/values-nl/strings.xml
@@ -186,7 +186,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">beschikbaar</string>
<string name="server_info_unavailable">niet beschikbaar</string>
<string name="missing_public_keys">Ontbrekende publieke sleutel-aankondigingen</string>
diff --git a/src/main/res/values-pl/strings.xml b/src/main/res/values-pl/strings.xml
index a957abb05..0601b4a14 100644
--- a/src/main/res/values-pl/strings.xml
+++ b/src/main/res/values-pl/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">dostępny</string>
<string name="server_info_unavailable">niedostępny</string>
<string name="missing_public_keys">Brak informacji o kluczu publicznym</string>
diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml
index 59ab3ae5b..a79d5f0af 100644
--- a/src/main/res/values-ru/strings.xml
+++ b/src/main/res/values-ru/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Команда Блокирования</string>
<string name="server_info_roster_version">XEP-0237: Управление версиями списков</string>
<string name="server_info_stream_management">XEP-0198: Управление потоками</string>
- <string name="server_info_pep">XEP-0163: PEP (Аватары)</string>
<string name="server_info_available">доступен</string>
<string name="server_info_unavailable">недоступен</string>
<string name="missing_public_keys">Отсутствие анонсирования открытых ключей</string>
diff --git a/src/main/res/values-sk/strings.xml b/src/main/res/values-sk/strings.xml
index 30c303f7c..cc1b9ccbb 100644
--- a/src/main/res/values-sk/strings.xml
+++ b/src/main/res/values-sk/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">dostupný</string>
<string name="server_info_unavailable">nedostupný</string>
<string name="missing_public_keys">Chýba oznámenie o verejnom kľúči</string>
diff --git a/src/main/res/values-sr/strings.xml b/src/main/res/values-sr/strings.xml
index 64ad53938..b443d5b53 100644
--- a/src/main/res/values-sr/strings.xml
+++ b/src/main/res/values-sr/strings.xml
@@ -76,6 +76,7 @@
<string name="delete_messages">Обриши поруке</string>
<string name="also_end_conversation">Окончај ову преписку након тога</string>
<string name="choose_presence">Избор присутности за контакта</string>
+ <string name="send_unencrypted_message">Пошаљи нешифровану поруку</string>
<string name="send_otr_message">Пошаљи ОТР шифровану поруку</string>
<string name="send_omemo_message">Пошаљи ОМЕМО шифровану поруку</string>
<string name="send_pgp_message">Пошаљи ОпенПГП шифровану поруку</string>
@@ -149,6 +150,7 @@
<string name="account_status_regis_not_sup">Сервер не подржава регистрацију</string>
<string name="account_status_security_error">Безбедносна грешка</string>
<string name="account_status_incompatible_server">Некомпатибилан сервер</string>
+ <string name="encryption_choice_unencrypted">Нешифровано</string>
<string name="encryption_choice_otr">ОТР</string>
<string name="encryption_choice_pgp">ОпенПГП</string>
<string name="encryption_choice_omemo">ОМЕМО</string>
@@ -186,7 +188,6 @@
<string name="server_info_blocking">XEP-0191: наредба блокирања</string>
<string name="server_info_roster_version">XEP-0237: верзионисање ростера</string>
<string name="server_info_stream_management">XEP-0198: менаџмент тока</string>
- <string name="server_info_pep">XEP-0163: ПЕП (аватари)</string>
<string name="server_info_available">доступан</string>
<string name="server_info_unavailable">недоступан</string>
<string name="missing_public_keys">Недостају објаве јавног кључа</string>
@@ -366,6 +367,8 @@
<string name="purge_key">Очисти кључ</string>
<string name="purge_key_desc_part1">Желите ли заиста да очистите овај кључ?</string>
<string name="purge_key_desc_part2">Неповратно ће бити сматран компровитованим, и њиме више никад нећете моћи да успоставите сесију.</string>
+ <string name="error_no_keys_to_trust">Нема употребљивих кључева за овај контакт. Ако сте очистили било који од тих кључева, контакт мора да генерише нови.</string>
+ <string name="error_trustkeys_title">Грешка</string>
<string name="fetching_history_from_server">Добављам историјат са сервера</string>
<string name="no_more_history_on_server">Нема више историјата на серверу</string>
<string name="updating">Ажурирам…</string>
@@ -476,4 +479,6 @@
<string name="download_failed_server_not_found">Преузимање није успело: сервер није нађен</string>
<string name="download_failed_file_not_found">Преузимање није успело: фајл није нађен</string>
<string name="download_failed_could_not_connect">Преузимање није успело: не могу да се повежем са домаћином</string>
+ <string name="pref_use_white_background">Користи белу позадину</string>
+ <string name="pref_use_white_background_summary">Приказ примљених порука црним текстом на белој позадини</string>
</resources>
diff --git a/src/main/res/values-sv/strings.xml b/src/main/res/values-sv/strings.xml
index faa12a924..ebbe6ebdb 100644
--- a/src/main/res/values-sv/strings.xml
+++ b/src/main/res/values-sv/strings.xml
@@ -76,6 +76,7 @@
<string name="delete_messages">Ta bort meddelanden</string>
<string name="also_end_conversation">Avsluta sedan denna konversation</string>
<string name="choose_presence">Välj tillgänglighet till kontakt</string>
+ <string name="send_unencrypted_message">Skicka okrypterat meddelande</string>
<string name="send_otr_message">Skicka OTR-krypterat meddelande</string>
<string name="send_omemo_message">Skicka OMEMO-krypterat meddelande</string>
<string name="send_pgp_message">Skicka OpenPGP-krypterat meddelande</string>
@@ -149,6 +150,7 @@
<string name="account_status_regis_not_sup">Servern stödjer inte registrering</string>
<string name="account_status_security_error">Säkerhetsfel</string>
<string name="account_status_incompatible_server">Inkompatibel server</string>
+ <string name="encryption_choice_unencrypted">Okrypterat</string>
<string name="encryption_choice_otr">OTR</string>
<string name="encryption_choice_pgp">OpenPGP</string>
<string name="encryption_choice_omemo">OMEMO</string>
@@ -181,12 +183,13 @@
<string name="muc_details_other_members">Andra medlemmar</string>
<string name="server_info_show_more">Server info</string>
<string name="server_info_mam">XEP-0313: Message Archive</string>
- <string name="server_info_carbon_messages">Carbon Messages</string>
+ <string name="server_info_carbon_messages">XEP-0280: Message Carbons</string>
<string name="server_info_csi">XEP-0352: Client State Indication</string>
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
- <string name="server_info_stream_management">Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatarbilder)</string>
+ <string name="server_info_stream_management">XEP-0198: Stream Management</string>
+ <string name="server_info_pep">XEP-0163: PEP (Avatarbilder / OMEMO)</string>
+ <string name="server_info_http_upload">XEP-0363: HTTP Fildelning</string>
<string name="server_info_available">tillgänglig</string>
<string name="server_info_unavailable">otillgänglig</string>
<string name="missing_public_keys">Annonsering om publik nyckel saknas</string>
@@ -366,6 +369,8 @@
<string name="purge_key">Rensa nyckel</string>
<string name="purge_key_desc_part1">Är du säker på att du vill rensa denna nyckel?</string>
<string name="purge_key_desc_part2">Den kommer att antas oåterkalleligt komprometterat och du kommer aldrig kunna bygga en session med den igen.</string>
+ <string name="error_no_keys_to_trust">Det finns inga användbara nycklar tillgängliga för den här kontakten. Om du har rensat någon av dennes nycklar behöver de generera nya.</string>
+ <string name="error_trustkeys_title">Fel</string>
<string name="fetching_history_from_server">Hämtar historik från server</string>
<string name="no_more_history_on_server">Ingen mer historik på server</string>
<string name="updating">Uppdaterar…</string>
@@ -474,4 +479,6 @@
<string name="download_failed_server_not_found">Nerladdning gick fel: Server hittades inte</string>
<string name="download_failed_file_not_found">Nerladdning gick fel: Filen hittades inte</string>
<string name="download_failed_could_not_connect">Nerladdningen gick fel: Kunder inte ansluta till server</string>
+ <string name="pref_use_white_background">Använd vit bakgrund</string>
+ <string name="pref_use_white_background_summary">Visa mottagna meddelanden som svart text på vit bakgrund</string>
</resources>
diff --git a/src/main/res/values-v21/themes.xml b/src/main/res/values-v21/themes.xml
index 8aa79ac39..91d43e777 100644
--- a/src/main/res/values-v21/themes.xml
+++ b/src/main/res/values-v21/themes.xml
@@ -2,8 +2,8 @@
<resources>
<style name="ConversationsTheme" parent="@android:style/Theme.Material.Light.DarkActionBar">
- <item name="android:colorPrimary">@color/green500</item>
- <item name="android:colorPrimaryDark">@color/green700</item>
+ <item name="android:colorPrimary">@color/primary</item>
+ <item name="android:colorPrimaryDark">@color/primary_dark</item>
<item name="android:colorAccent">@color/accent</item>
<item name="android:windowActionModeOverlay">true</item>
diff --git a/src/main/res/values-zh-rCN/strings.xml b/src/main/res/values-zh-rCN/strings.xml
index de8751c51..96f6189d8 100644
--- a/src/main/res/values-zh-rCN/strings.xml
+++ b/src/main/res/values-zh-rCN/strings.xml
@@ -182,7 +182,6 @@
<string name="server_info_blocking">XEP-0191: 屏蔽指令</string>
<string name="server_info_roster_version">XEP-0237: 花名册版本</string>
<string name="server_info_stream_management">XEP-0198: 流管理</string>
- <string name="server_info_pep">XEP-0163: PEP (头像)</string>
<string name="server_info_available">有效</string>
<string name="server_info_unavailable">无效</string>
<string name="missing_public_keys">缺少公钥通知</string>
diff --git a/src/main/res/values-zh-rTW/strings.xml b/src/main/res/values-zh-rTW/strings.xml
index 495e427fd..7c73b646f 100644
--- a/src/main/res/values-zh-rTW/strings.xml
+++ b/src/main/res/values-zh-rTW/strings.xml
@@ -159,7 +159,6 @@
<string name="muc_details_other_members">其他成員</string>
<string name="server_info_carbon_messages">XEP-0280: Message Carbons</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
<string name="server_info_available">支援</string>
<string name="server_info_unavailable">不支援</string>
<string name="missing_public_keys">沒有公佈公鑰訊息。</string>
diff --git a/src/main/res/values/colors.xml b/src/main/res/values/colors.xml
index c2a3ad60c..b3567b44c 100644
--- a/src/main/res/values/colors.xml
+++ b/src/main/res/values/colors.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
- <color name="green500">#ff259b24</color>
- <color name="green700">#ff0a7e07</color>
+ <color name="primary">#ff259b24</color>
+ <color name="primary_dark">#ff0a7e07</color>
<color name="accent">#ff0091ea</color>
<color name="black87">#de000000</color>
<color name="black54">#8a000000</color>
@@ -16,4 +16,5 @@
<color name="red500">#fff44336</color>
<color name="red800">#ffc62828</color>
<color name="orange500">#ffff9800</color>
+ <color name="green500">#ff259b24</color>
</resources> \ No newline at end of file
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index b6551db4c..0c6d800e4 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -190,8 +190,8 @@
<string name="server_info_blocking">XEP-0191: Blocking Command</string>
<string name="server_info_roster_version">XEP-0237: Roster Versioning</string>
<string name="server_info_stream_management">XEP-0198: Stream Management</string>
- <string name="server_info_pep">XEP-0163: PEP (Avatars)</string>
- <string name="server_info_http_upload">XEP-xxxx: HTTP File Upload</string>
+ <string name="server_info_pep">XEP-0163: PEP (Avatars / OMEMO)</string>
+ <string name="server_info_http_upload">XEP-0363: HTTP File Upload</string>
<string name="server_info_available">available</string>
<string name="server_info_unavailable">unavailable</string>
<string name="missing_public_keys">Missing public key announcements</string>
diff --git a/src/main/res/values/themes.xml b/src/main/res/values/themes.xml
index afdc3e809..0f8b95bb1 100644
--- a/src/main/res/values/themes.xml
+++ b/src/main/res/values/themes.xml
@@ -39,8 +39,8 @@
</style>
<style name="ConversationsActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
- <item name="android:background">@color/green500</item>
- <item name="android:backgroundStacked">@color/green700</item>
+ <item name="android:background">@color/primary</item>
+ <item name="android:backgroundStacked">@color/primary_dark</item>
<item name="android:displayOptions">showHome|homeAsUp|showTitle</item>
<item name="android:icon">@android:color/transparent</item>
</style>