Merge branch 'development'

Daniel Gultsch created

Change summary

CHANGELOG.md                                                                |   2 
README.md                                                                   |   9 
build.gradle                                                                |   4 
src/main/java/eu/siacs/conversations/entities/Message.java                  |  26 
src/main/java/eu/siacs/conversations/http/HttpDownloadConnection.java       |   2 
src/main/java/eu/siacs/conversations/persistance/FileBackend.java           |   2 
src/main/java/eu/siacs/conversations/services/NotificationService.java      |   2 
src/main/java/eu/siacs/conversations/services/XmppConnectionService.java    |   2 
src/main/java/eu/siacs/conversations/ui/ConversationActivity.java           |  41 
src/main/java/eu/siacs/conversations/ui/ConversationFragment.java           |   8 
src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java            |  20 
src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java      |  10 
src/main/java/eu/siacs/conversations/ui/XmppActivity.java                   |  20 
src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java         |   2 
src/main/java/eu/siacs/conversations/utils/CryptoHelper.java                |   4 
src/main/java/eu/siacs/conversations/utils/UIHelper.java                    |   3 
src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java      |   2 
src/main/java/eu/siacs/conversations/xmpp/jingle/JingleInbandTransport.java |   4 
src/main/res/drawable/es_slidingpane_shadow.xml                             |   2 
src/main/res/drawable/grey.xml                                              |   2 
src/main/res/drawable/infocard_border.xml                                   |   4 
src/main/res/drawable/message_border.xml                                    |   2 
src/main/res/drawable/snackbar.xml                                          |   2 
src/main/res/layout-w945dp/fragment_conversations_overview.xml              |   6 
src/main/res/layout/account_row.xml                                         |   4 
src/main/res/layout/actionview_search.xml                                   |   4 
src/main/res/layout/activity_about.xml                                      |   4 
src/main/res/layout/activity_change_password.xml                            |  22 
src/main/res/layout/activity_contact_details.xml                            |  12 
src/main/res/layout/activity_edit_account.xml                               |  64 
src/main/res/layout/activity_muc_details.xml                                |  12 
src/main/res/layout/activity_publish_profile_picture.xml                    |  16 
src/main/res/layout/activity_start_conversation.xml                         |   2 
src/main/res/layout/activity_verify_otr.xml                                 |  24 
src/main/res/layout/contact.xml                                             |   6 
src/main/res/layout/contact_key.xml                                         |   4 
src/main/res/layout/conversation_list_row.xml                               |  12 
src/main/res/layout/create_contact_dialog.xml                               |   8 
src/main/res/layout/fragment_conversation.xml                               |  14 
src/main/res/layout/fragment_conversations_overview.xml                     |   6 
src/main/res/layout/join_conference_dialog.xml                              |   8 
src/main/res/layout/list_item_tag.xml                                       |   2 
src/main/res/layout/manage_accounts.xml                                     |   4 
src/main/res/layout/message_received.xml                                    |   9 
src/main/res/layout/message_sent.xml                                        |   9 
src/main/res/layout/message_status.xml                                      |   2 
src/main/res/layout/quickedit.xml                                           |   2 
src/main/res/values-ar-rEG/strings.xml                                      |   2 
src/main/res/values-bg/strings.xml                                          |  10 
src/main/res/values-ca/strings.xml                                          |   5 
src/main/res/values-cs/strings.xml                                          |  10 
src/main/res/values-de/strings.xml                                          |  10 
src/main/res/values-el/strings.xml                                          |   5 
src/main/res/values-es/strings.xml                                          |  10 
src/main/res/values-eu/strings.xml                                          |  10 
src/main/res/values-fr/strings.xml                                          |   5 
src/main/res/values-gl/strings.xml                                          |   1 
src/main/res/values-id/strings.xml                                          |   5 
src/main/res/values-it/strings.xml                                          |   5 
src/main/res/values-iw/strings.xml                                          |   1 
src/main/res/values-ja/strings.xml                                          |   5 
src/main/res/values-ko/strings.xml                                          |   5 
src/main/res/values-nl/strings.xml                                          |   8 
src/main/res/values-pl/strings.xml                                          |   5 
src/main/res/values-pt/strings.xml                                          | 297 
src/main/res/values-ro-rRO/strings.xml                                      |   1 
src/main/res/values-ru/strings.xml                                          |   5 
src/main/res/values-sk/strings.xml                                          |  13 
src/main/res/values-sr/strings.xml                                          |  10 
src/main/res/values-sv/strings.xml                                          |  10 
src/main/res/values-v21/themes.xml                                          |   4 
src/main/res/values-zh-rCN/strings.xml                                      |   5 
src/main/res/values-zh-rTW/strings.xml                                      |   1 
src/main/res/values/colors.xml                                              |  28 
src/main/res/values/strings.xml                                             |   6 
src/main/res/values/styles.xml                                              |   2 
src/main/res/values/themes.xml                                              |   4 
77 files changed, 593 insertions(+), 326 deletions(-)

Detailed changes

CHANGELOG.md 🔗

@@ -1,7 +1,7 @@
 ###Changelog
 
 ####Version 1.5.0
-* upload files to HTTP host and share them in MUCs. requiers new [HttpUploadComponent](https://github.com/siacs/HttpUploadComponent) on server side
+* upload files to HTTP host and share them in MUCs. requires new [HttpUploadComponent](https://github.com/siacs/HttpUploadComponent) on server side
 
 ####Version 1.4.5
 * fixes to message parser to not display some ejabberd muc status messages

README.md 🔗

@@ -42,6 +42,8 @@ run your own XMPP server for you and your friends. These XEP's are:
 * XEP-0065: SOCKS5 Bytestreams (or mod_proxy65). Will be used to transfer
   files if both parties are behind a firewall (NAT).
 * XEP-0163: Personal Eventing Protocol for avatars
+* XEP-0191: Blocking command lets you blacklist spammers or block contacts
+  without removing them from your roster.
 * XEP-0198: Stream Management allows XMPP to survive small network outages and
   changes of the underlying TCP connection.
 * XEP-0280: Message Carbons which automatically syncs the messages you send to
@@ -54,8 +56,9 @@ run your own XMPP server for you and your friends. These XEP's are:
 * XEP-0352: Client State Indication lets the server know whether or not
   Conversations is in the background. Allows the server to save bandwidth by
   withholding unimportant packages.
-* XEP-0191: Blocking command lets you blacklist spammers or block contacts
-  without removing them from your roster.
+* XEP-xxxx: HttpUpload allows you to share files in conferences and with offline
+  contacts. Requires an [additional component](https://github.com/siacs/HttpUploadComponent)
+  on your server.
 
 ## Team
 
@@ -252,7 +255,7 @@ decrypting and encrypting takes longer than OTR. It is however asynchronous and
 works well with message carbons.
 
 To use OpenPGP you have to install the open source app
-[OpenKeychain](www.openkeychain.org) and then long press on the account in
+[OpenKeychain](http://www.openkeychain.org) and then long press on the account in
 manage accounts and choose renew PGP announcement from the contextual menu.
 
 #### How does the encryption for conferences work?

build.gradle 🔗

@@ -45,8 +45,8 @@ android {
 	defaultConfig {
 		minSdkVersion 14
 		targetSdkVersion 21
-		versionCode 76
-		versionName "1.5.0-beta"
+		versionCode 78
+		versionName "1.5.0"
 	}
 
 	compileOptions {

src/main/java/eu/siacs/conversations/entities/Message.java 🔗

@@ -321,15 +321,25 @@ public class Message extends AbstractEntity {
 			return this.serverMsgId.equals(message.getServerMsgId());
 		} else if (this.body == null || this.counterpart == null) {
 			return false;
-		} else if (message.getRemoteMsgId() != null) {
-			return (message.getRemoteMsgId().equals(this.remoteMsgId) || message.getRemoteMsgId().equals(this.uuid))
-					&& this.counterpart.equals(message.getCounterpart())
-					&& this.body.equals(message.getBody());
 		} else {
-			return this.remoteMsgId == null
-					&& this.counterpart.equals(message.getCounterpart())
-					&& this.body.equals(message.getBody())
-					&& Math.abs(this.getTimeSent() - message.getTimeSent()) < Config.MESSAGE_MERGE_WINDOW * 1000;
+			String body, otherBody;
+			if (this.hasFileOnRemoteHost()) {
+				body = getFileParams().url.toString();
+				otherBody = message.body == null ? null : message.body.trim();
+			} else {
+				body = this.body;
+				otherBody = message.body;
+			}
+			if (message.getRemoteMsgId() != null) {
+				return (message.getRemoteMsgId().equals(this.remoteMsgId) || message.getRemoteMsgId().equals(this.uuid))
+						&& this.counterpart.equals(message.getCounterpart())
+						&& body.equals(otherBody);
+			} else {
+				return this.remoteMsgId == null
+						&& this.counterpart.equals(message.getCounterpart())
+						&& body.equals(otherBody)
+						&& Math.abs(this.getTimeSent() - message.getTimeSent()) < Config.MESSAGE_MERGE_WINDOW * 1000;
+			}
 		}
 	}
 

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.primary));
+		mBuilder.setColor(mXmppConnectionService.getResources().getColor(R.color.green500));
 	}
 
 	private void updateNotification(final boolean notify) {

src/main/java/eu/siacs/conversations/services/XmppConnectionService.java 🔗

@@ -1699,7 +1699,7 @@ public class XmppConnectionService extends Service implements OnPhoneContactsLoa
 	public void changeAffiliationsInConference(final Conversation conference, MucOptions.Affiliation before, MucOptions.Affiliation after) {
 		List<Jid> jids = new ArrayList<>();
 		for (MucOptions.User user : conference.getMucOptions().getUsers()) {
-			if (user.getAffiliation() == before) {
+			if (user.getAffiliation() == before && user.getJid() != null) {
 				jids.add(user.getJid());
 			}
 		}

src/main/java/eu/siacs/conversations/ui/ConversationActivity.java 🔗

@@ -374,8 +374,7 @@ public class ConversationActivity extends XmppActivity
 		} else {
 			menuAdd.setVisible(!isConversationsOverviewHideable());
 			if (this.getSelectedConversation() != null) {
-				if (this.getSelectedConversation().getLatestMessage()
-						.getEncryption() != Message.ENCRYPTION_NONE) {
+				if (this.getSelectedConversation().getNextEncryption(forceEncryption()) != Message.ENCRYPTION_NONE) {
 					if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
 						menuSecure.setIcon(R.drawable.ic_lock_white_24dp);
 					} else {
@@ -740,14 +739,11 @@ public class ConversationActivity extends XmppActivity
 							break;
 						case R.id.encryption_choice_pgp:
 							if (hasPgp()) {
-								if (conversation.getAccount().getKeys()
-										.has("pgp_signature")) {
-									conversation
-										.setNextEncryption(Message.ENCRYPTION_PGP);
+								if (conversation.getAccount().getKeys().has("pgp_signature")) {
+									conversation.setNextEncryption(Message.ENCRYPTION_PGP);
 									item.setChecked(true);
 								} else {
-									announcePgp(conversation.getAccount(),
-											conversation);
+									announcePgp(conversation.getAccount(),conversation);
 								}
 							} else {
 								showInstallPgpDialog();
@@ -757,16 +753,16 @@ public class ConversationActivity extends XmppActivity
 							conversation.setNextEncryption(Message.ENCRYPTION_NONE);
 							break;
 					}
-					xmppConnectionService.databaseBackend
-						.updateConversation(conversation);
+					xmppConnectionService.databaseBackend.updateConversation(conversation);
 					fragment.updateChatMsgHint();
+					invalidateOptionsMenu();
 					return true;
 				}
 			});
 			popup.inflate(R.menu.encryption_choices);
 			MenuItem otr = popup.getMenu().findItem(R.id.encryption_choice_otr);
-			MenuItem none = popup.getMenu().findItem(
-					R.id.encryption_choice_none);
+			MenuItem none = popup.getMenu().findItem(R.id.encryption_choice_none);
+			MenuItem pgp = popup.getMenu().findItem(R.id.encryption_choice_pgp);
 			if (conversation.getMode() == Conversation.MODE_MULTI) {
 				otr.setEnabled(false);
 			} else {
@@ -782,12 +778,10 @@ public class ConversationActivity extends XmppActivity
 					otr.setChecked(true);
 					break;
 				case Message.ENCRYPTION_PGP:
-					popup.getMenu().findItem(R.id.encryption_choice_pgp)
-						.setChecked(true);
+					pgp.setChecked(true);
 					break;
 				default:
-					popup.getMenu().findItem(R.id.encryption_choice_none)
-						.setChecked(true);
+					none.setChecked(true);
 					break;
 			}
 			popup.show();
@@ -1079,6 +1073,9 @@ public class ConversationActivity extends XmppActivity
 	}
 
 	private void attachLocationToConversation(Conversation conversation, Uri uri) {
+		if (conversation == null) {
+			return;
+		}
 		xmppConnectionService.attachLocationToConversation(conversation,uri, new UiCallback<Message>() {
 
 			@Override
@@ -1099,8 +1096,10 @@ public class ConversationActivity extends XmppActivity
 	}
 
 	private void attachFileToConversation(Conversation conversation, Uri uri) {
-		prepareFileToast = Toast.makeText(getApplicationContext(),
-				getText(R.string.preparing_file), Toast.LENGTH_LONG);
+		if (conversation == null) {
+			return;
+		}
+		prepareFileToast = Toast.makeText(getApplicationContext(),getText(R.string.preparing_file), Toast.LENGTH_LONG);
 		prepareFileToast.show();
 		xmppConnectionService.attachFileToConversation(conversation,uri, new UiCallback<Message>() {
 			@Override
@@ -1122,8 +1121,10 @@ public class ConversationActivity extends XmppActivity
 	}
 
 	private void attachImageToConversation(Conversation conversation, Uri uri) {
-		prepareFileToast = Toast.makeText(getApplicationContext(),
-				getText(R.string.preparing_image), Toast.LENGTH_LONG);
+		if (conversation == null) {
+			return;
+		}
+		prepareFileToast = Toast.makeText(getApplicationContext(),getText(R.string.preparing_image), Toast.LENGTH_LONG);
 		prepareFileToast.show();
 		xmppConnectionService.attachImageToConversation(conversation, uri,
 				new UiCallback<Message>() {

src/main/java/eu/siacs/conversations/ui/ConversationFragment.java 🔗

@@ -3,6 +3,7 @@ package eu.siacs.conversations.ui;
 import android.app.AlertDialog;
 import android.app.Fragment;
 import android.app.PendingIntent;
+import android.content.ActivityNotFoundException;
 import android.content.Context;
 import android.content.DialogInterface;
 import android.content.Intent;
@@ -513,7 +514,12 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa
 			}
 			shareIntent.setType(mime);
 		}
-		activity.startActivity(Intent.createChooser(shareIntent, getText(R.string.share_with)));
+		try {
+			activity.startActivity(Intent.createChooser(shareIntent, getText(R.string.share_with)));
+		} catch (ActivityNotFoundException e) {
+			//This should happen only on faulty androids because normally chooser is always available
+			Toast.makeText(activity,R.string.no_application_found_to_open_file,Toast.LENGTH_SHORT).show();
+		}
 	}
 
 	private void copyText(Message message) {

src/main/java/eu/siacs/conversations/ui/EditAccountActivity.java 🔗

@@ -123,11 +123,11 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
 				mAccount.setOption(Account.OPTION_REGISTER, registerNewAccount);
 				xmppConnectionService.createAccount(mAccount);
 			}
-			if (jidToEdit != null) {
+			if (jidToEdit != null && !mAccount.isOptionSet(Account.OPTION_DISABLED)) {
 				finish();
 			} else {
 				updateSaveButton();
-				updateAccountInformation();
+				updateAccountInformation(true);
 			}
 
 		}
@@ -163,7 +163,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
 					updateSaveButton();
 				}
 				if (mAccount != null) {
-					updateAccountInformation();
+					updateAccountInformation(false);
 				}
 			}
 		});
@@ -384,7 +384,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
 				xmppConnectionService.getKnownHosts());
 		if (this.jidToEdit != null) {
 			this.mAccount = xmppConnectionService.findAccountByJid(jidToEdit);
-			updateAccountInformation();
+			updateAccountInformation(true);
 		} else if (this.xmppConnectionService.getAccounts().size() == 0) {
 			if (getActionBar() != null) {
 				getActionBar().setDisplayHomeAsUpEnabled(false);
@@ -419,9 +419,11 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
 		return super.onOptionsItemSelected(item);
 	}
 
-	private void updateAccountInformation() {
-		this.mAccountJid.setText(this.mAccount.getJid().toBareJid().toString());
-		this.mPassword.setText(this.mAccount.getPassword());
+	private void updateAccountInformation(boolean init) {
+		if (init) {
+			this.mAccountJid.setText(this.mAccount.getJid().toBareJid().toString());
+			this.mPassword.setText(this.mAccount.getPassword());
+		}
 		if (this.jidToEdit != null) {
 			this.mAvatar.setVisibility(View.VISIBLE);
 			this.mAvatar.setImageBitmap(avatarService().get(this.mAccount, getPixel(72)));
@@ -501,7 +503,9 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate
 		} else {
 			if (this.mAccount.errorStatus()) {
 				this.mAccountJid.setError(getString(this.mAccount.getStatus().getReadableId()));
-				this.mAccountJid.requestFocus();
+				if (init || !accountInfoEdited()) {
+					this.mAccountJid.requestFocus();
+				}
 			} else {
 				this.mAccountJid.setError(null);
 			}

src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java 🔗

@@ -42,6 +42,7 @@ import android.widget.Checkable;
 import android.widget.EditText;
 import android.widget.ListView;
 import android.widget.Spinner;
+import android.widget.Toast;
 
 import com.google.zxing.integration.android.IntentIntegrator;
 import com.google.zxing.integration.android.IntentResult;
@@ -263,9 +264,12 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU
 
 	protected void openConversationForBookmark(int position) {
 		Bookmark bookmark = (Bookmark) conferences.get(position);
-		Conversation conversation = xmppConnectionService
-			.findOrCreateConversation(bookmark.getAccount(),
-					bookmark.getJid(), true);
+		Jid jid = bookmark.getJid();
+		if (jid == null) {
+			Toast.makeText(this,R.string.invalid_jid,Toast.LENGTH_SHORT).show();
+			return;
+		}
+		Conversation conversation = xmppConnectionService.findOrCreateConversation(bookmark.getAccount(),jid, true);
 		conversation.setBookmark(bookmark);
 		if (!conversation.getMucOptions().online()) {
 			xmppConnectionService.joinMuc(conversation);

src/main/java/eu/siacs/conversations/ui/XmppActivity.java 🔗

@@ -334,14 +334,14 @@ public abstract class XmppActivity extends Activity {
 		super.onCreate(savedInstanceState);
 		metrics = getResources().getDisplayMetrics();
 		ExceptionHelper.init(getApplicationContext());
-		mPrimaryTextColor = getResources().getColor(R.color.primarytext);
-		mSecondaryTextColor = getResources().getColor(R.color.secondarytext);
-		mColorRed = getResources().getColor(R.color.red);
-		mColorOrange = getResources().getColor(R.color.orange);
-		mColorGreen = getResources().getColor(R.color.green);
-		mPrimaryColor = getResources().getColor(R.color.primary);
-		mPrimaryBackgroundColor = getResources().getColor(R.color.primarybackground);
-		mSecondaryBackgroundColor = getResources().getColor(R.color.secondarybackground);
+		mPrimaryTextColor = getResources().getColor(R.color.black87);
+		mSecondaryTextColor = getResources().getColor(R.color.black54);
+		mColorRed = getResources().getColor(R.color.red500);
+		mColorOrange = getResources().getColor(R.color.orange500);
+		mColorGreen = getResources().getColor(R.color.green500);
+		mPrimaryColor = getResources().getColor(R.color.green500);
+		mPrimaryBackgroundColor = getResources().getColor(R.color.grey50);
+		mSecondaryBackgroundColor = getResources().getColor(R.color.grey200);
 		this.mTheme = findTheme();
 		setTheme(this.mTheme);
 		this.mUsingEnterKey = usingEnterKey();
@@ -719,10 +719,6 @@ public abstract class XmppActivity extends Activity {
 		return this.mColorRed;
 	}
 
-	public int getPrimaryColor() {
-		return this.mPrimaryColor;
-	}
-
 	public int getOnlineColor() {
 		return this.mColorGreen;
 	}

src/main/java/eu/siacs/conversations/ui/adapter/AccountAdapter.java 🔗

@@ -52,7 +52,7 @@ public class AccountAdapter extends ArrayAdapter<Account> {
 				break;
 		}
 		final Switch tglAccountState = (Switch) view.findViewById(R.id.tgl_account_status);
-		final boolean isDisabled = (account.getStatus() == Account.State.DISABLED) ? true : false;
+		final boolean isDisabled = (account.getStatus() == Account.State.DISABLED);
 		tglAccountState.setOnCheckedChangeListener(null);
 		tglAccountState.setChecked(!isDisabled);
 		tglAccountState.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {

src/main/java/eu/siacs/conversations/utils/CryptoHelper.java 🔗

@@ -91,7 +91,9 @@ public final class CryptoHelper {
 	}
 
 	public static String prettifyFingerprint(String fingerprint) {
-		if (fingerprint.length() < 40) {
+		if (fingerprint==null) {
+			return "";
+		} else if (fingerprint.length() < 40) {
 			return fingerprint;
 		}
 		StringBuilder builder = new StringBuilder(fingerprint);

src/main/java/eu/siacs/conversations/utils/UIHelper.java 🔗

@@ -145,7 +145,8 @@ public class UIHelper {
 		if (d != null ) {
 			switch (d.getStatus()) {
 				case Transferable.STATUS_CHECKING:
-					return new Pair<>(context.getString(R.string.checking_image),true);
+					return new Pair<>(context.getString(R.string.checking_x,
+									getFileDescriptionString(context,message)),true);
 				case Transferable.STATUS_DOWNLOADING:
 					return new Pair<>(context.getString(R.string.receiving_x_file,
 									getFileDescriptionString(context,message),

src/main/java/eu/siacs/conversations/xmpp/jingle/JingleConnection.java 🔗

@@ -39,7 +39,7 @@ public class JingleConnection implements Transferable {
 	protected static final int JINGLE_STATUS_TRANSMITTING = 5;
 	protected static final int JINGLE_STATUS_FAILED = 99;
 
-	private int ibbBlockSize = 4096;
+	private int ibbBlockSize = 8192;
 
 	private int mJingleStatus = -1;
 	private int mStatus = Transferable.STATUS_UNKNOWN;

src/main/java/eu/siacs/conversations/xmpp/jingle/JingleInbandTransport.java 🔗

@@ -25,7 +25,6 @@ public class JingleInbandTransport extends JingleTransport {
 	private Account account;
 	private Jid counterpart;
 	private int blockSize;
-	private int bufferSize;
 	private int seq = 0;
 	private String sessionId;
 
@@ -58,7 +57,6 @@ public class JingleInbandTransport extends JingleTransport {
 		this.account = connection.getAccount();
 		this.counterpart = connection.getCounterPart();
 		this.blockSize = blocksize;
-		this.bufferSize = blocksize / 4;
 		this.sessionId = sid;
 	}
 
@@ -157,7 +155,7 @@ public class JingleInbandTransport extends JingleTransport {
 	}
 
 	private void sendNextBlock() {
-		byte[] buffer = new byte[this.bufferSize];
+		byte[] buffer = new byte[this.blockSize];
 		try {
 			int count = fileInputStream.read(buffer);
 			if (count == -1) {

src/main/res/drawable/es_slidingpane_shadow.xml 🔗

@@ -2,7 +2,7 @@
 <shape xmlns:android="http://schemas.android.com/apk/res/android" >
 
     <gradient
-        android:endColor="@color/divider"
+        android:endColor="@color/black12"
         android:startColor="@android:color/transparent" />
 
     <size

src/main/res/drawable/grey.xml 🔗

@@ -2,6 +2,6 @@
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
     android:shape="rectangle" >
 
-    <solid android:color="@color/divider" />
+    <solid android:color="@color/black12" />
 
 </shape>

src/main/res/drawable/infocard_border.xml 🔗

@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android" >
 
-    <solid android:color="@color/primarybackground" />
+    <solid android:color="@color/grey50" />
 
     <corners android:radius="2dp" />
 
     <stroke
         android:width="0.5dp"
-        android:color="@color/divider" >
+        android:color="@color/black12" >
     </stroke>
     
     <padding

src/main/res/drawable/snackbar.xml 🔗

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android" >
 
-    <solid android:color="@color/darkbackground" />
+    <solid android:color="@color/grey800" />
 
     <corners android:radius="8dip" />
 

src/main/res/layout-w945dp/fragment_conversations_overview.xml 🔗

@@ -9,15 +9,15 @@
         android:layout_width="0dp"
         android:layout_height="match_parent"
         android:layout_weight="1"
-        android:background="@color/primarybackground"
+        android:background="@color/grey50"
         android:orientation="vertical" >
 
         <de.timroes.android.listview.EnhancedListView
             android:id="@+id/list"
             android:layout_width="fill_parent"
             android:layout_height="wrap_content"
-            android:background="@color/primarybackground"
-            android:divider="@color/divider"
+            android:background="@color/grey50"
+            android:divider="@color/black12"
             android:dividerHeight="1dp" />
     </LinearLayout>
 

src/main/res/layout/account_row.xml 🔗

@@ -32,7 +32,7 @@
             android:layout_height="wrap_content"
             android:scrollHorizontally="false"
             android:singleLine="true"
-            android:textColor="@color/primarytext"
+            android:textColor="@color/black87"
             android:textSize="?attr/TextSizeHeadline" />
 
         <TextView
@@ -40,7 +40,7 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:text="@string/account_status_unknown"
-            android:textColor="@color/secondarytext"
+            android:textColor="@color/black54"
             android:textSize="?attr/TextSizeBody"
             android:textStyle="bold" />
     </LinearLayout>

src/main/res/layout/actionview_search.xml 🔗

@@ -14,6 +14,8 @@
         android:layout_height="wrap_content"
         android:focusable="true"
         android:inputType="textEmailAddress|textNoSuggestions"
-        android:textColor="@color/ondarktext" />
+        android:textColor="@color/white"
+        android:textColorHint="@color/white70"
+        android:hint="@string/search_for_contacts_or_groups"/>
 
 </RelativeLayout>

src/main/res/layout/activity_about.xml 🔗

@@ -1,7 +1,7 @@
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     tools:context="eu.siacs.conversations.ui.AboutActivity"
-    android:background="@color/primarybackground"
+    android:background="@color/grey50"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent">
 
@@ -15,7 +15,7 @@
         android:layout_marginRight="@dimen/activity_horizontal_margin"
         android:layout_marginTop="@dimen/activity_vertical_margin"
         android:paddingBottom="@dimen/activity_vertical_margin"
-        android:textColor="@color/primarytext"
+        android:textColor="@color/black87"
         android:textSize="?attr/TextSizeBody"
         android:typeface="monospace"/>
 </ScrollView>

src/main/res/layout/activity_change_password.xml 🔗

@@ -2,7 +2,7 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                 android:layout_width="match_parent"
                 android:layout_height="match_parent"
-                android:background="@color/primarybackground">
+                android:background="@color/grey50">
 
 	<ScrollView
 		android:layout_width="fill_parent"
@@ -22,7 +22,7 @@
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
 				android:text="@string/current_password"
-				android:textColor="@color/primarytext"
+				android:textColor="@color/black87"
 				android:textSize="?attr/TextSizeBody"/>
 
 			<EditText
@@ -32,15 +32,15 @@
 				android:layout_marginBottom="8dp"
 				android:hint="@string/password"
 				android:inputType="textPassword"
-				android:textColor="@color/primarytext"
-				android:textColorHint="@color/secondarytext"
+				android:textColor="@color/black87"
+				android:textColorHint="@color/black54"
 				android:textSize="?attr/TextSizeBody"/>
 
 			<TextView
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
 				android:text="@string/new_password"
-				android:textColor="@color/primarytext"
+				android:textColor="@color/black87"
 				android:textSize="?attr/TextSizeBody"/>
 
 			<EditText
@@ -50,15 +50,15 @@
 				android:layout_marginBottom="8dp"
 				android:hint="@string/password"
 				android:inputType="textPassword"
-				android:textColor="@color/primarytext"
-				android:textColorHint="@color/secondarytext"
+				android:textColor="@color/black87"
+				android:textColorHint="@color/black54"
 				android:textSize="?attr/TextSizeBody"/>
 
 			<TextView
 				android:layout_width="wrap_content"
 				android:layout_height="wrap_content"
 				android:text="@string/account_settings_confirm_password"
-				android:textColor="@color/primarytext"
+				android:textColor="@color/black87"
 				android:textSize="?attr/TextSizeBody"/>
 
 			<EditText
@@ -67,8 +67,8 @@
 				android:layout_height="wrap_content"
 				android:hint="@string/password"
 				android:inputType="textPassword"
-				android:textColor="@color/primarytext"
-				android:textColorHint="@color/secondarytext"
+				android:textColor="@color/black87"
+				android:textColorHint="@color/black54"
 				android:textSize="?attr/TextSizeBody"/>
 		</LinearLayout>
 	</ScrollView>
@@ -94,7 +94,7 @@
 			android:layout_height="fill_parent"
 			android:layout_marginBottom="7dp"
 			android:layout_marginTop="7dp"
-			android:background="@color/divider"/>
+			android:background="@color/black12"/>
 
 		<Button
 			android:id="@+id/right_button"

src/main/res/layout/activity_contact_details.xml 🔗

@@ -2,7 +2,7 @@
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
-    android:background="@color/secondarybackground" >
+    android:background="@color/grey200" >
 
     <LinearLayout
         android:layout_width="fill_parent"
@@ -39,7 +39,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:text="@string/account_settings_example_jabber_id"
-                    android:textColor="@color/primarytext"
+                    android:textColor="@color/black87"
                     android:textSize="?attr/TextSizeHeadline"
                     android:textStyle="bold" />
 
@@ -61,7 +61,7 @@
                         android:id="@+id/details_lastseen"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
-                        android:textColor="@color/secondarytext"
+                        android:textColor="@color/black54"
                         android:textSize="?attr/TextSizeBody" />
                 </LinearLayout>
 
@@ -78,7 +78,7 @@
                     android:layout_height="wrap_content"
                     android:layout_marginTop="8dp"
                     android:text="@string/send_presence_updates"
-                    android:textColor="@color/primarytext"
+                    android:textColor="@color/black87"
                     android:textSize="?attr/TextSizeBody" />
 
                 <CheckBox
@@ -86,7 +86,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:text="@string/receive_presence_updates"
-                    android:textColor="@color/primarytext"
+                    android:textColor="@color/black87"
                     android:textSize="?attr/TextSizeBody" />
             </LinearLayout>
 
@@ -98,7 +98,7 @@
                 android:layout_below="@+id/details_jidbox"
                 android:layout_marginTop="32dp"
                 android:text="@string/using_account"
-                android:textColor="@color/secondarytext"
+                android:textColor="@color/black54"
                 android:textSize="?attr/TextSizeInfo" />
         </RelativeLayout>
 

src/main/res/layout/activity_edit_account.xml 🔗

@@ -3,7 +3,7 @@
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:background="@color/secondarybackground" >
+    android:background="@color/grey200" >
 
     <ScrollView
         android:layout_width="fill_parent"
@@ -42,7 +42,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:text="@string/account_settings_jabber_id"
-                    android:textColor="@color/primarytext"
+                    android:textColor="@color/black87"
                     android:textSize="?attr/TextSizeBody" />
 
                 <AutoCompleteTextView
@@ -51,8 +51,8 @@
                     android:layout_height="wrap_content"
                     android:hint="@string/account_settings_example_jabber_id"
                     android:inputType="textEmailAddress"
-                    android:textColor="@color/primarytext"
-                    android:textColorHint="@color/secondarytext"
+                    android:textColor="@color/black87"
+                    android:textColorHint="@color/black54"
                     android:textSize="?attr/TextSizeBody" />
 
                 <TextView
@@ -60,7 +60,7 @@
                     android:layout_height="wrap_content"
                     android:layout_marginTop="8dp"
                     android:text="@string/account_settings_password"
-                    android:textColor="@color/primarytext"
+                    android:textColor="@color/black87"
                     android:textSize="?attr/TextSizeBody" />
 
                 <EditText
@@ -69,8 +69,8 @@
                     android:layout_height="wrap_content"
                     android:hint="@string/password"
                     android:inputType="textPassword"
-                    android:textColor="@color/primarytext"
-                    android:textColorHint="@color/secondarytext"
+                    android:textColor="@color/black87"
+                    android:textColorHint="@color/black54"
                     android:textSize="?attr/TextSizeBody" />
 
                 <CheckBox
@@ -79,7 +79,7 @@
                     android:layout_height="wrap_content"
                     android:layout_marginTop="8dp"
                     android:text="@string/register_account"
-                    android:textColor="@color/primarytext"
+                    android:textColor="@color/black87"
                     android:textSize="?attr/TextSizeBody" />
 
                 <TextView
@@ -87,7 +87,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:text="@string/account_settings_confirm_password"
-                    android:textColor="@color/primarytext"
+                    android:textColor="@color/black87"
                     android:textSize="?attr/TextSizeBody"
                     android:visibility="gone" />
 
@@ -99,8 +99,8 @@
                     android:hint="@string/confirm_password"
                     android:inputType="textPassword"
                     android:visibility="gone"
-                    android:textColor="@color/primarytext"
-                    android:textColorHint="@color/secondarytext"
+                    android:textColor="@color/black87"
+                    android:textColorHint="@color/black54"
                     android:textSize="?attr/TextSizeBody" />
                 </LinearLayout>
             </RelativeLayout>
@@ -132,7 +132,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_session_established"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -140,7 +140,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -161,7 +161,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_pep"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -169,7 +169,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -182,7 +182,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_blocking"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -190,7 +190,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -203,7 +203,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_stream_management"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -211,7 +211,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -224,7 +224,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_roster_version"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -232,7 +232,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -245,7 +245,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_carbon_messages"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -253,7 +253,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -266,7 +266,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_mam"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -274,7 +274,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -287,7 +287,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:text="@string/server_info_csi"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody" />
 
                         <TextView
@@ -295,7 +295,7 @@
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
                             android:layout_gravity="right"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             tools:ignore="RtlHardcoded"/>
                     </TableRow>
@@ -318,14 +318,14 @@
                             android:id="@+id/otr_fingerprint"
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
-                            android:textColor="@color/primarytext"
+                            android:textColor="@color/black87"
                             android:textSize="?attr/TextSizeBody"
                             android:typeface="monospace" />
 
                         <TextView
                             android:layout_width="wrap_content"
                             android:layout_height="wrap_content"
-                            android:textColor="@color/secondarytext"
+                            android:textColor="@color/black54"
                             android:textSize="?attr/TextSizeInfo"
                             android:text="@string/otr_fingerprint"/>
                     </LinearLayout>
@@ -363,14 +363,14 @@
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:text="@string/cancel"
-            android:textColor="@color/primarytext" />
+            android:textColor="@color/black87" />
 
         <View
             android:layout_width="1dp"
             android:layout_height="fill_parent"
             android:layout_marginBottom="7dp"
             android:layout_marginTop="7dp"
-            android:background="@color/divider" />
+            android:background="@color/black12" />
 
         <Button
             android:id="@+id/save_button"
@@ -380,7 +380,7 @@
             android:layout_weight="1"
             android:enabled="false"
             android:text="@string/save"
-            android:textColor="@color/secondarytext" />
+            android:textColor="@color/black54" />
     </LinearLayout>
 
 </RelativeLayout>

src/main/res/layout/activity_muc_details.xml 🔗

@@ -2,7 +2,7 @@
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
             android:layout_width="fill_parent"
             android:layout_height="fill_parent"
-            android:background="@color/secondarybackground">
+            android:background="@color/grey200">
 
 	<LinearLayout
 		android:layout_width="fill_parent"
@@ -26,7 +26,7 @@
 				android:layout_height="wrap_content"
 				android:layout_marginBottom="16dp"
 				android:text="@string/account_settings_example_jabber_id"
-				android:textColor="@color/primarytext"
+				android:textColor="@color/black87"
 				android:textSize="?attr/TextSizeHeadline"
 				android:textStyle="bold"/>
 
@@ -56,7 +56,7 @@
 						android:layout_width="wrap_content"
 						android:layout_height="wrap_content"
 						android:singleLine="true"
-						android:textColor="@color/primarytext"
+						android:textColor="@color/black87"
 						android:textSize="?attr/TextSizeHeadline"/>
 
 					<TextView
@@ -64,7 +64,7 @@
 						android:layout_width="wrap_content"
 						android:layout_height="wrap_content"
 						android:singleLine="true"
-						android:textColor="@color/primarytext"
+						android:textColor="@color/black87"
 						android:textSize="?attr/TextSizeBody"/>
 				</LinearLayout>
 
@@ -88,7 +88,7 @@
 				android:layout_height="wrap_content"
 			    android:text="@string/private_conference"
 				android:layout_centerVertical="true"
-				android:textColor="@color/primarytext"
+				android:textColor="@color/black87"
 				android:textSize="?attr/TextSizeBody"
 				android:layout_alignParentLeft="true"
 				android:layout_toLeftOf="@+id/change_conference_button"
@@ -113,7 +113,7 @@
 				android:layout_gravity="right"
 				android:layout_marginTop="32dp"
 				android:text="@string/using_account"
-				android:textColor="@color/secondarytext"
+				android:textColor="@color/black54"
 				android:textSize="?attr/TextSizeInfo"/>
 		</LinearLayout>
 

src/main/res/layout/activity_publish_profile_picture.xml 🔗

@@ -2,7 +2,7 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:background="@color/primarybackground" >
+    android:background="@color/grey50" >
 
     <LinearLayout
         android:id="@+id/account_image_wrapper"
@@ -27,7 +27,7 @@
         android:layout_below="@id/account_image_wrapper"
         android:layout_centerHorizontal="true"
         android:text="@string/touch_to_choose_picture"
-        android:textColor="@color/secondarytext" />
+        android:textColor="@color/black54" />
 
     <TextView
         android:id="@+id/secondary_hint"
@@ -36,7 +36,7 @@
         android:layout_below="@id/hint"
         android:layout_centerHorizontal="true"
         android:text="@string/or_long_press_for_default"
-        android:textColor="@color/secondarytext" />
+        android:textColor="@color/black54" />
 
     <LinearLayout
         android:id="@+id/button_bar"
@@ -53,14 +53,14 @@
             android:layout_height="wrap_content"
             android:layout_weight="1"
             android:text="@string/cancel"
-            android:textColor="@color/primarytext" />
+            android:textColor="@color/black87" />
 
         <View
             android:layout_width="1dp"
             android:layout_height="fill_parent"
             android:layout_marginBottom="7dp"
             android:layout_marginTop="7dp"
-            android:background="@color/divider" />
+            android:background="@color/black12" />
 
         <Button
             android:id="@+id/publish_button"
@@ -70,7 +70,7 @@
             android:layout_weight="1"
             android:enabled="false"
             android:text="@string/publish"
-            android:textColor="@color/secondarytext" />
+            android:textColor="@color/black54" />
     </LinearLayout>
 
     <LinearLayout
@@ -89,7 +89,7 @@
             android:id="@+id/account"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textColor="@color/primarytext"
+            android:textColor="@color/black87"
             android:textSize="?attr/TextSizeHeadline" />
 
         <TextView
@@ -99,7 +99,7 @@
             android:layout_marginTop="8dp"
             android:minLines="3"
             android:text="@string/publish_avatar_explanation"
-            android:textColor="@color/primarytext"
+            android:textColor="@color/black87"
             android:textSize="?attr/TextSizeBody" />
     </LinearLayout>
 

src/main/res/layout/activity_start_conversation.xml 🔗

@@ -3,6 +3,6 @@
     android:id="@+id/start_conversation_view_pager"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:background="@color/primarybackground" >
+    android:background="@color/grey50" >
 
 </android.support.v4.view.ViewPager>

src/main/res/layout/activity_verify_otr.xml 🔗

@@ -2,7 +2,7 @@
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                 android:layout_width="match_parent"
                 android:layout_height="match_parent"
-                android:background="@color/primarybackground">
+                android:background="@color/grey50">
 
 	<ScrollView
 		android:layout_width="fill_parent"
@@ -34,7 +34,7 @@
 					android:id="@+id/your_fingerprint"
 					android:layout_width="wrap_content"
 					android:layout_height="wrap_content"
-					android:textColor="@color/primarytext"
+					android:textColor="@color/black87"
 					android:textSize="?attr/TextSizeBody"
 					android:typeface="monospace"/>
 
@@ -42,7 +42,7 @@
 					android:layout_width="wrap_content"
 					android:layout_height="wrap_content"
 					android:text="@string/your_fingerprint"
-					android:textColor="@color/secondarytext"
+					android:textColor="@color/black54"
 					android:textSize="?attr/TextSizeInfo"/>
 
 				<TextView
@@ -50,7 +50,7 @@
 					android:layout_width="wrap_content"
 					android:layout_height="wrap_content"
 					android:layout_marginTop="20dp"
-					android:textColor="@color/primarytext"
+					android:textColor="@color/black87"
 					android:textSize="?attr/TextSizeBody"
 					android:typeface="monospace"/>
 
@@ -59,7 +59,7 @@
 					android:layout_height="wrap_content"
 					android:layout_marginBottom="20dp"
 					android:text="@string/remote_fingerprint"
-					android:textColor="@color/secondarytext"
+					android:textColor="@color/black54"
 					android:textSize="?attr/TextSizeInfo"/>
 
 			</LinearLayout>
@@ -77,7 +77,7 @@
 					android:layout_height="wrap_content"
 					android:layout_gravity="center_horizontal"
 					android:text="@string/verified"
-					android:textColor="@color/primarytext"
+					android:textColor="@color/black87"
 					android:textSize="?attr/TextSizeHeadline"
 					android:textStyle="bold"
 					android:visibility="gone"/>
@@ -87,7 +87,7 @@
 					android:layout_width="wrap_content"
 					android:layout_height="wrap_content"
 					android:layout_marginBottom="8dp"
-					android:textColor="@color/primarytext"
+					android:textColor="@color/black87"
 					android:textSize="?attr/TextSizeBody"
 					android:textStyle="bold"
 					android:visibility="gone"/>
@@ -99,8 +99,8 @@
 					android:layout_marginBottom="8dp"
 					android:hint="@string/shared_secret_hint"
 					android:inputType="textAutoComplete"
-					android:textColor="@color/primarytext"
-					android:textColorHint="@color/secondarytext"
+					android:textColor="@color/black87"
+					android:textColorHint="@color/black54"
 					android:textSize="?attr/TextSizeBody"/>
 
 				<EditText
@@ -110,8 +110,8 @@
 					android:layout_marginTop="8dp"
 					android:hint="@string/shared_secret_secret"
 					android:inputType="textPassword"
-					android:textColor="@color/primarytext"
-					android:textColorHint="@color/secondarytext"
+					android:textColor="@color/black87"
+					android:textColorHint="@color/black54"
 					android:textSize="?attr/TextSizeBody"/>
 			</LinearLayout>
 		</LinearLayout>
@@ -137,7 +137,7 @@
 			android:layout_height="fill_parent"
 			android:layout_marginBottom="7dp"
 			android:layout_marginTop="7dp"
-			android:background="@color/divider"/>
+			android:background="@color/black12"/>
 
 		<Button
 			android:id="@+id/right_button"

src/main/res/layout/contact.xml 🔗

@@ -27,7 +27,7 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:singleLine="true"
-            android:textColor="@color/primarytext"
+            android:textColor="@color/black87"
             android:textSize="?attr/TextSizeHeadline" />
 
         <TextView
@@ -35,7 +35,7 @@
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
             android:singleLine="true"
-            android:textColor="@color/primarytext"
+            android:textColor="@color/black87"
             android:textSize="?attr/TextSizeBody" />
         <LinearLayout
             android:id="@+id/tags"
@@ -48,7 +48,7 @@
             android:id="@+id/key"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textColor="@color/primarytext"
+            android:textColor="@color/black87"
             android:textSize="?attr/TextSizeHeadline"
             android:typeface="monospace"
             android:visibility="gone" />

src/main/res/layout/contact_key.xml 🔗

@@ -15,7 +15,7 @@
             android:id="@+id/key"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textColor="@color/primarytext"
+            android:textColor="@color/black87"
             android:textSize="?attr/TextSizeBody"
             android:typeface="monospace" />
 
@@ -23,7 +23,7 @@
             android:id="@+id/key_type"
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
-            android:textColor="@color/secondarytext"
+            android:textColor="@color/black54"
             android:textSize="?attr/TextSizeInfo"/>
     </LinearLayout>
 

src/main/res/layout/conversation_list_row.xml 🔗

@@ -6,13 +6,13 @@
 	<View
 		android:layout_width="fill_parent"
 		android:layout_height="fill_parent"
-		android:background="@color/primary"/>
+		android:background="@color/green500"/>
 
 	<FrameLayout
 		android:id="@+id/swipeable_item"
 		android:layout_width="fill_parent"
 		android:layout_height="fill_parent"
-		android:background="@color/primarybackground">
+		android:background="@color/grey50">
 
 	<RelativeLayout
 		android:layout_width="fill_parent"
@@ -42,7 +42,7 @@
 				android:layout_alignLeft="@+id/conversation_lastwrapper"
 				android:layout_toLeftOf="@+id/conversation_lastupdate"
 				android:singleLine="true"
-				android:textColor="@color/primarytext"
+				android:textColor="@color/black87"
 				android:textSize="?attr/TextSizeHeadline"
 				android:typeface="sans" />
 
@@ -60,14 +60,14 @@
 					android:layout_height="wrap_content"
 					android:scrollHorizontally="false"
 					android:singleLine="true"
-					android:textColor="@color/primarytext"
+					android:textColor="@color/black87"
 					android:textSize="?attr/TextSizeBody" />
 
 				<ImageView
 					android:id="@+id/conversation_lastimage"
 					android:layout_width="fill_parent"
 					android:layout_height="36dp"
-					android:background="@color/primarytext"
+					android:background="@color/black87"
 					android:scaleType="centerCrop" />
 			</LinearLayout>
 
@@ -78,7 +78,7 @@
 				android:layout_alignBaseline="@+id/conversation_name"
 				android:layout_alignParentRight="true"
 				android:gravity="right"
-				android:textColor="@color/secondarytext"
+				android:textColor="@color/black54"
 				android:textSize="?attr/TextSizeInfo" />
 		</RelativeLayout>
 	</RelativeLayout>

src/main/res/layout/create_contact_dialog.xml 🔗

@@ -10,7 +10,7 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="@string/your_account"
-        android:textColor="@color/primarytext"
+        android:textColor="@color/black87"
         android:textSize="?attr/TextSizeBody" />
 
     <Spinner
@@ -24,7 +24,7 @@
         android:layout_height="wrap_content"
         android:layout_marginTop="8dp"
         android:text="@string/account_settings_jabber_id"
-        android:textColor="@color/primarytext"
+        android:textColor="@color/black87"
         android:textSize="?attr/TextSizeBody" />
 
     <AutoCompleteTextView
@@ -33,7 +33,7 @@
         android:layout_height="wrap_content"
         android:hint="@string/account_settings_example_jabber_id"
         android:inputType="textEmailAddress"
-        android:textColor="@color/primarytext"
-        android:textColorHint="@color/secondarytext" />
+        android:textColor="@color/black87"
+        android:textColorHint="@color/black54" />
 
 </LinearLayout>

src/main/res/layout/fragment_conversation.xml 🔗

@@ -3,7 +3,7 @@
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:background="@color/secondarybackground" >
+    android:background="@color/grey200" >
 
     <ListView
         android:id="@+id/messages_view"
@@ -12,7 +12,7 @@
         android:layout_above="@+id/snackbar"
         android:layout_alignParentLeft="true"
         android:layout_alignParentTop="true"
-        android:background="@color/secondarybackground"
+        android:background="@color/grey200"
         android:divider="@null"
         android:dividerHeight="0dp"
         android:listSelector="@android:color/transparent"
@@ -27,7 +27,7 @@
         android:layout_height="wrap_content"
         android:layout_alignParentBottom="true"
         android:layout_alignParentLeft="true"
-        android:background="@color/primarybackground" >
+        android:background="@color/grey50" >
 
         <eu.siacs.conversations.ui.EditMessage
             android:id="@+id/textinput"
@@ -35,7 +35,7 @@
             android:layout_height="wrap_content"
             android:layout_alignParentLeft="true"
             android:layout_toLeftOf="@+id/textSendButton"
-            android:background="@color/primarybackground"
+            android:background="@color/grey50"
             android:ems="10"
             android:imeOptions="flagNoExtractUi|actionSend"
             android:inputType="textShortMessage|textMultiLine|textCapSentences"
@@ -45,7 +45,7 @@
             android:paddingLeft="8dp"
             android:paddingRight="8dp"
             android:paddingTop="12dp"
-            android:textColor="@color/primarytext" >
+            android:textColor="@color/black87" >
 
             <requestFocus />
         </eu.siacs.conversations.ui.EditMessage>
@@ -80,7 +80,7 @@
             android:layout_centerVertical="true"
             android:layout_toLeftOf="@+id/snackbar_action"
             android:paddingLeft="24dp"
-            android:textColor="@color/ondarktext"
+            android:textColor="@color/white"
             android:textSize="?attr/TextSizeBody" />
 
         <TextView
@@ -94,7 +94,7 @@
             android:paddingRight="24dp"
             android:paddingTop="16dp"
             android:textAllCaps="true"
-            android:textColor="@color/ondarktext"
+            android:textColor="@color/white"
             android:textSize="?attr/TextSizeBody"
             android:textStyle="bold" />
     </RelativeLayout>

src/main/res/layout/fragment_conversations_overview.xml 🔗

@@ -7,15 +7,15 @@
         xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_width="@dimen/conversations_overview_width"
         android:layout_height="match_parent"
-        android:background="@color/primarybackground"
+        android:background="@color/grey50"
         android:orientation="vertical" >
 
         <de.timroes.android.listview.EnhancedListView
             android:id="@+id/list"
             android:layout_width="fill_parent"
             android:layout_height="wrap_content"
-            android:background="@color/primarybackground"
-            android:divider="@color/divider"
+            android:background="@color/grey50"
+            android:divider="@color/black12"
             android:dividerHeight="1dp" />
     </LinearLayout>
 

src/main/res/layout/join_conference_dialog.xml 🔗

@@ -10,7 +10,7 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="@string/your_account"
-        android:textColor="@color/primarytext"
+        android:textColor="@color/black87"
         android:textSize="?attr/TextSizeBody" />
 
     <Spinner
@@ -24,7 +24,7 @@
         android:layout_height="wrap_content"
         android:layout_marginTop="8dp"
         android:text="@string/conference_address"
-        android:textColor="@color/primarytext"
+        android:textColor="@color/black87"
         android:textSize="?attr/TextSizeBody" />
 
     <AutoCompleteTextView
@@ -33,8 +33,8 @@
         android:layout_height="wrap_content"
         android:hint="@string/conference_address_example"
         android:inputType="textEmailAddress"
-        android:textColor="@color/primarytext"
-        android:textColorHint="@color/secondarytext" />
+        android:textColor="@color/black87"
+        android:textColorHint="@color/black54" />
 
     <CheckBox
         android:id="@+id/bookmark"

src/main/res/layout/list_item_tag.xml 🔗

@@ -7,7 +7,7 @@
     android:paddingLeft="4dp"
     android:paddingRight="4dp"
     android:textSize="?attr/TextSizeInfo"
-    android:textColor="@color/ondarktext"
+    android:textColor="@color/white"
     android:textAllCaps="true"
     android:layout_marginRight="8dp"
 />

src/main/res/layout/manage_accounts.xml 🔗

@@ -3,13 +3,13 @@
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent"
-    android:background="@color/primarybackground" >
+    android:background="@color/grey50" >
 
     <ListView
         android:id="@+id/account_list"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
-        android:divider="@color/divider"
+        android:divider="@color/black12"
         android:dividerHeight="1dp" >
     </ListView>
 

src/main/res/layout/message_received.xml 🔗

@@ -21,7 +21,7 @@
         <LinearLayout
             android:layout_width="wrap_content"
             android:layout_height="fill_parent"
-            android:background="@color/primarybackground"
+            android:background="@color/grey50"
             android:gravity="center_vertical"
             android:orientation="vertical"
             android:paddingBottom="4dp"
@@ -34,7 +34,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:adjustViewBounds="true"
-                android:background="@color/primarytext"
+                android:background="@color/black87"
                 android:paddingBottom="2dp"
                 android:scaleType="centerCrop" />
 
@@ -43,7 +43,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:autoLink="web"
-                android:textColor="@color/primarytext"
+                android:textColor="@color/black87"
                 android:textSize="?attr/TextSizeBody" />
 
             <Button
@@ -51,7 +51,6 @@
                 style="?android:attr/buttonStyleSmall"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="@string/download_image"
                 android:visibility="gone" />
 
             <LinearLayout
@@ -77,7 +76,7 @@
                     android:layout_gravity="center_vertical"
                     android:gravity="center_vertical"
                     android:text="@string/sending"
-                    android:textColor="@color/secondarytext"
+                    android:textColor="@color/black54"
                     android:textSize="?attr/TextSizeInfo" />
             </LinearLayout>
         </LinearLayout>

src/main/res/layout/message_sent.xml 🔗

@@ -21,7 +21,7 @@
         <LinearLayout
             android:layout_width="wrap_content"
             android:layout_height="fill_parent"
-            android:background="@color/primarybackground"
+            android:background="@color/grey50"
             android:gravity="center_vertical"
             android:orientation="vertical"
             android:paddingBottom="4dp"
@@ -34,7 +34,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:adjustViewBounds="true"
-                android:background="@color/primarytext"
+                android:background="@color/black87"
                 android:paddingBottom="2dp"
                 android:scaleType="centerCrop" />
 
@@ -43,7 +43,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:autoLink="web"
-                android:textColor="@color/primarytext"
+                android:textColor="@color/black87"
                 android:textSize="?attr/TextSizeBody" />
             
              <Button
@@ -51,7 +51,6 @@
                 style="?android:attr/buttonStyleSmall"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:text="@string/download_image"
                 android:visibility="gone" />
 
             <LinearLayout
@@ -68,7 +67,7 @@
                     android:layout_gravity="center_vertical"
                     android:gravity="center_vertical"
                     android:text="@string/sending"
-                    android:textColor="@color/secondarytext"
+                    android:textColor="@color/black54"
                     android:textSize="?attr/TextSizeInfo" />
 
                 <ImageView

src/main/res/layout/message_status.xml 🔗

@@ -28,7 +28,7 @@
         android:layout_toEndOf="@+id/message_photo"
         android:layout_toRightOf="@+id/message_photo"
         android:text="@string/contact_has_read_up_to_this_point"
-        android:textColor="@color/secondarytext"
+        android:textColor="@color/black54"
         android:textSize="?attr/TextSizeInfo"
         android:textStyle="italic"/>
 

src/main/res/layout/quickedit.xml 🔗

@@ -11,7 +11,7 @@
         android:layout_height="wrap_content"
         android:ems="10"
         android:inputType="textPersonName"
-        android:textColor="@color/primarytext" >
+        android:textColor="@color/black87" >
 
         <requestFocus />
     </EditText>

src/main/res/values-ar-rEG/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">OTRارساله رساله مشفره عبر</string>
   <string name="send_pgp_message">OpenPGPارساله رساله مشفره عبر</string>
   <string name="your_nick_has_been_changed">تم تغيير لقبك بنجاح</string>
-  <string name="download_image">تنزيل الصورة</string>
   <string name="send_unencrypted">إرسال بدون تشفير</string>
   <string name="decryption_failed">فشل فك التشفير. ربما لم يكن لديك المفتاح الخاص الصحيح.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -212,7 +211,6 @@
   <string name="conference_members_only">الغرفة للأعضاء فقط</string>
   <string name="conference_kicked">تم طردك من الغرفة</string>
   <string name="not_connected_try_again">انقطع الإتصال .. حاول مرة أخرى</string>
-  <string name="check_image_filesize">فحص حجم الصورة</string>
   <string name="message_options">خيارات الرساله</string>
   <string name="copy_text">نسخ النص</string>
   <string name="message_text">نص الرسالة</string>

src/main/res/values-bg/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Изпращане на съобщение, шифровано чрез OTP</string>
   <string name="send_pgp_message">Изпращане на съобщение, шифровано чрез OpenPGP</string>
   <string name="your_nick_has_been_changed">Псевдонимът Ви беше променен</string>
-  <string name="download_image">Изтегляне на изображението</string>
   <string name="send_unencrypted">Изпращане нешифровано</string>
   <string name="decryption_failed">Неуспешно дешифроване. Възможно е да нямате правилния частен ключ.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,14 @@
   <string name="conference_members_only">Тази беседа е само за членове</string>
   <string name="conference_kicked">Бяхте изритан от тази конференция</string>
   <string name="using_account">използвайки профила %s</string>
-  <string name="checking_image">Проверяване на изображението на HTTP сървъра</string>
-  <string name="image_file_deleted">Изображението е изтрито</string>
+  <string name="checking_x">Проверяване на %s на HTTP сървъра</string>
   <string name="not_connected_try_again">Не сте свързани. Опитайте отново по-късно</string>
-  <string name="check_image_filesize">Проверка на размера на файла с изображението</string>
+  <string name="check_x_filesize">Проверете размера на %s</string>
   <string name="message_options">Настройки за съобщенята</string>
   <string name="copy_text">Копиране на текста</string>
   <string name="copy_original_url">Копиране на оригиналния адрес</string>
   <string name="send_again">Повторно изпращане</string>
-  <string name="image_url">Адрес на изображението</string>
+  <string name="file_url">Адрес на файла</string>
   <string name="message_text">Текст на съобщението</string>
   <string name="url_copied_to_clipboard">Адресът е копиран</string>
   <string name="message_copied_to_clipboard">Съобщението е копирано</string>
@@ -451,4 +449,6 @@
   <string name="none">Нищо</string>
   <string name="recently_used">Използвани наскоро</string>
   <string name="choose_quick_action">Изберете бързо действие</string>
+  <string name="file_not_found_on_remote_host">Файлът не е открит на отдалечения сървър</string>
+  <string name="search_for_contacts_or_groups">Търсене на контакти или групи</string>
 </resources>

src/main/res/values-ca/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Enviar missatge xifrat amb OTR</string>
   <string name="send_pgp_message">Enviar missatge xifrat amb OpenPGP</string>
   <string name="your_nick_has_been_changed">El teu sobrenom s\'ha modificat</string>
-  <string name="download_image">Descarregar imatge</string>
   <string name="send_unencrypted">Enviar sense xifrar</string>
   <string name="decryption_failed">Ha fallat el desxiframent. Potser no tinguis la clau privada apropiada.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">La sala es nomès per membres</string>
   <string name="conference_kicked">Estàs expulsat d\'aquesta sala</string>
   <string name="using_account">Utlitzant el compte %s</string>
-  <string name="checking_image">Comprovant l\'imatge en el client HTTP</string>
-  <string name="image_file_deleted">L\'arxiu de l\'imatge ha sigut eliminada</string>
   <string name="not_connected_try_again">No estàs connectat. Intenta-ho més tard</string>
-  <string name="check_image_filesize">Comprobant el tamany de l\'imatge</string>
   <string name="message_options">Opcions del missatge</string>
   <string name="copy_text">Copiar el text</string>
   <string name="copy_original_url">Copiar la URL original</string>
   <string name="send_again">Envia una altra vegada</string>
-  <string name="image_url">Imatge URL</string>
   <string name="message_text">Missatge de text</string>
   <string name="url_copied_to_clipboard">URL copiada al portapapers</string>
   <string name="message_copied_to_clipboard">Missatge copiat al portapapers</string>

src/main/res/values-cs/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Poslat OTR šifrovanou zprávu</string>
   <string name="send_pgp_message">Poslat OpenPGP šifrovanou zprávu</string>
   <string name="your_nick_has_been_changed">Přezdívka byla změněna</string>
-  <string name="download_image">Stáhnout obrázek</string>
   <string name="send_unencrypted">Poslat nešifrované</string>
   <string name="decryption_failed">Zašifrování se nezdařilo. Možná nemáte správný privátní klíč.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,14 @@
   <string name="conference_members_only">Tato konference je pouze pro členy</string>
   <string name="conference_kicked">Vykopli tě z této konference</string>
   <string name="using_account">za použití účtu %s</string>
-  <string name="checking_image">Ověřuji obrázek na HTTP hostiteli</string>
-  <string name="image_file_deleted">Obrázek byl smazán</string>
+  <string name="checking_x">Ověřuji %s na HTTP hostiteli</string>
   <string name="not_connected_try_again">Bez připojení. Zkus znovu později</string>
-  <string name="check_image_filesize">Ověřit velikost obrázku</string>
+  <string name="check_x_filesize">Ověřit %s velikost</string>
   <string name="message_options">Možnosti zpráv</string>
   <string name="copy_text">Zkopírovat text</string>
   <string name="copy_original_url">Kopírovat originální URL</string>
   <string name="send_again">Poslat znovu</string>
-  <string name="image_url">URL obrázku</string>
+  <string name="file_url">URL souboru</string>
   <string name="message_text">Text zprávy</string>
   <string name="url_copied_to_clipboard">URL zkopírováno do schránky</string>
   <string name="message_copied_to_clipboard">Zpráva zkopírována do schránky</string>
@@ -453,4 +451,6 @@
   <string name="none">Žádná</string>
   <string name="recently_used">Naposledy použitá</string>
   <string name="choose_quick_action">Vybrat rychlou akci</string>
+  <string name="file_not_found_on_remote_host">Soubor nenalezen na vzdáleném serveru</string>
+  <string name="search_for_contacts_or_groups">Hledat kontakty či skupiny</string>
 </resources>

src/main/res/values-de/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">OTR-verschlüsselt schreiben…</string>
   <string name="send_pgp_message">OpenPGP-verschlüsselt schreiben…</string>
   <string name="your_nick_has_been_changed">Dein Nickname wurde geändert</string>
-  <string name="download_image">Bild herunterladen</string>
   <string name="send_unencrypted">Normal verschicken</string>
   <string name="decryption_failed">Entschlüsselung fehlgeschlagen. Vielleicht hast du nicht den richtigen privaten Schlüssel.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,14 @@
   <string name="conference_members_only">Die Konferenz ist nur für Mitglieder</string>
   <string name="conference_kicked">Du wurdest aus der Konferenz geworfen</string>
   <string name="using_account">Verwende Konto %s</string>
-  <string name="checking_image">Prüfe Bild auf HTTP-Host</string>
-  <string name="image_file_deleted">Bild wurde gelöscht</string>
+  <string name="checking_x">%s auf HTTP-Host prüfen</string>
   <string name="not_connected_try_again">Nicht verbunden, bitte später versuchen</string>
-  <string name="check_image_filesize">Bildgröße prüfen</string>
+  <string name="check_x_filesize">%s-Größe prüfen</string>
   <string name="message_options">Nachrichtenoptionen</string>
   <string name="copy_text">Text kopieren</string>
   <string name="copy_original_url">Original-URL kopieren</string>
   <string name="send_again">Erneut senden</string>
-  <string name="image_url">Bild-URL</string>
+  <string name="file_url">Datei-URL</string>
   <string name="message_text">Nachrichtentext</string>
   <string name="url_copied_to_clipboard">URL in Zwischenablage kopiert</string>
   <string name="message_copied_to_clipboard">Nachricht in Zwischenablage kopiert</string>
@@ -451,4 +449,6 @@
   <string name="none">keine</string>
   <string name="recently_used">zuletzt verwendet</string>
   <string name="choose_quick_action">wähle Schnell-Taste</string>
+  <string name="file_not_found_on_remote_host">Datei auf Server nicht gefunden</string>
+  <string name="search_for_contacts_or_groups">Nach Kontakten oder Konferenzen suchen</string>
 </resources>

src/main/res/values-el/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Αποστολή κρυπτογραφημένου μηνύματος OTR</string>
   <string name="send_pgp_message">Αποστολή κρυπτογραφημένου μηνύματος OpenPGP</string>
   <string name="your_nick_has_been_changed">Το ψευδώνυμό σας έχει αλλάξει</string>
-  <string name="download_image">Μεταφόρτωση εικόνας</string>
   <string name="send_unencrypted">Αποστολή χωρίς κρυπτογράφηση</string>
   <string name="decryption_failed">Η αποκρυπτογράφηση απέτυχε. Ίσως δεν κατέχετε το σωστό ιδιωτικό κλειδί.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">Αυτή η συνδιάσκεψη είναι μόνο για μέλη</string>
   <string name="conference_kicked">Έχετε διωχθει από αυτή την συνδιάσκεψη</string>
   <string name="using_account">χρήση λογαριασμού %s</string>
-  <string name="checking_image">Έλεγχος εικόνας στον διακομιστή HTTP</string>
-  <string name="image_file_deleted">Το αρχείο εικόνας έχει διαγραφεί</string>
   <string name="not_connected_try_again">Δεν είστε συνδεμένοι. Δοκιμάστε ξανά αργότερα</string>
-  <string name="check_image_filesize">Ελέγξτε το μέγεθος του αρχείου εικόνας</string>
   <string name="message_options">Επιλογές μηνυμάτων</string>
   <string name="copy_text">Αντιγραφή κειμένου</string>
   <string name="copy_original_url">Αντιγραφή αρχικής διεύθυνσης URL</string>
   <string name="send_again">Αποστολή ξανά</string>
-  <string name="image_url">Διεύθυνση URL εικόνας</string>
   <string name="message_text">Κείμενο μηνύματος</string>
   <string name="url_copied_to_clipboard">Η διεύθυνση URL αντιγράφηκε στο πρόχειρο</string>
   <string name="message_copied_to_clipboard">Το μήνυμα αντιγράφηκε στο πρόχειρο</string>

src/main/res/values-es/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Enviar mensaje cifrado con OTR</string>
   <string name="send_pgp_message">Enviar mensaje cifrado con OpenPGP</string>
   <string name="your_nick_has_been_changed">Tu apodo se ha modificado</string>
-  <string name="download_image">Descargar imagen</string>
   <string name="send_unencrypted">Enviar sin cifrar</string>
   <string name="decryption_failed">Falló el descifrado. Tal vez no tengas la clave privada apropiada.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,14 @@
   <string name="conference_members_only">Esta conversación es solo para miembros</string>
   <string name="conference_kicked">Has sido expulsado de esta conversación</string>
   <string name="using_account">Usando cuenta %s</string>
-  <string name="checking_image">Comprobando imagen en servidor HTTP</string>
-  <string name="image_file_deleted">El archivo de imagen ha sido eliminado</string>
+  <string name="checking_x">Comprobando %s en servidor HTTP</string>
   <string name="not_connected_try_again">No estás conectado. Inténtalo más tarde</string>
-  <string name="check_image_filesize">Comprobar el tamaño del archivo de imagen</string>
+  <string name="check_x_filesize">Comprobar tamaño de %s</string>
   <string name="message_options">Opciones de mensaje</string>
   <string name="copy_text">Copiar texto</string>
   <string name="copy_original_url">Copiar URL original</string>
   <string name="send_again">Volver a enviar</string>
-  <string name="image_url">URL Imagen</string>
+  <string name="file_url">URL de archivo</string>
   <string name="message_text">Mensaje de texto</string>
   <string name="url_copied_to_clipboard">URL copiada al portapapeles</string>
   <string name="message_copied_to_clipboard">Mensaje copiado al portapapeles</string>
@@ -451,4 +449,6 @@
   <string name="none">Ninguna</string>
   <string name="recently_used">Usada más recientemente</string>
   <string name="choose_quick_action">Elegir acción rápida</string>
+  <string name="file_not_found_on_remote_host">Archivo no encontrado en servidor remoto</string>
+  <string name="search_for_contacts_or_groups">Buscar contactos o grupos</string>
 </resources>

src/main/res/values-eu/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">OTRz enkriptatutako mezua bidali</string>
   <string name="send_pgp_message">OpenPGPz enkriptatutako mezua bidali</string>
   <string name="your_nick_has_been_changed">Zure ezizena aldatu da</string>
-  <string name="download_image">Irudia deskargatu</string>
   <string name="send_unencrypted">Enkriptatu gabe bidali</string>
   <string name="decryption_failed">Desenkriptazioak huts egin du. Agian ez duzu gako pribatu egokia.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,14 @@
   <string name="conference_members_only">Konferentzia hau kideentzat da soilik</string>
   <string name="conference_kicked">Konferentzia honetatik kanporatua izan zara</string>
   <string name="using_account">%s kontua erabiltzen</string>
-  <string name="checking_image">Irudia egiaztatzen HTTP ostalarian</string>
-  <string name="image_file_deleted">Irudia ezabatu egin da</string>
+  <string name="checking_x">%s egiaztatzen HTTP ostalarian</string>
   <string name="not_connected_try_again">Ez zaude konektatuta. Saiatu beranduago berriz</string>
-  <string name="check_image_filesize">Irudiaren tamaina egiaztatu</string>
+  <string name="check_x_filesize">Egiaztatu %sren neurria</string>
   <string name="message_options">Mezuaren aukerak</string>
   <string name="copy_text">Testua kopiatu</string>
   <string name="copy_original_url">Jatorrizko URLa kopiatu</string>
   <string name="send_again">Berriro bidali</string>
-  <string name="image_url">Irudiaren URLa</string>
+  <string name="file_url">Fitxategiaren URLa</string>
   <string name="message_text">Testu mezua</string>
   <string name="url_copied_to_clipboard">URLa arbelera kopiatu da</string>
   <string name="message_copied_to_clipboard">Mezua arbelera kopiatu da</string>
@@ -451,4 +449,6 @@
   <string name="none">Bat ere ez</string>
   <string name="recently_used">Azkenengo aldiz erabilitakoa</string>
   <string name="choose_quick_action">Ekintza azkarra aukeratu</string>
+  <string name="file_not_found_on_remote_host">Fitxategia ez da aurkitu urruneko zerbitzarian</string>
+  <string name="search_for_contacts_or_groups">Kontaktuak edo taldeak bilatu</string>
 </resources>

src/main/res/values-fr/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Envoyer un message sécurisé par OTR</string>
   <string name="send_pgp_message">Envoyer un message sécurisé par OpenPGP</string>
   <string name="your_nick_has_been_changed">Votre identifiant a été changé</string>
-  <string name="download_image">Télécharger l\'image</string>
   <string name="send_unencrypted">Envoyer en clair</string>
   <string name="decryption_failed">Echec du déchiffrement. Merci de vérifier la clef privée utilisée.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">Cette conférence est réservée aux membres</string>
   <string name="conference_kicked">Vous avez été éjecté de cette conférence</string>
   <string name="using_account">utiliser le compte %s</string>
-  <string name="checking_image">Vérification de l\'image</string>
-  <string name="image_file_deleted">L\'image a été suprimée</string>
   <string name="not_connected_try_again">Vous n\'êtes pas connecté. Merci de retenter plus tard.</string>
-  <string name="check_image_filesize">Vérifier la taille de l\'image</string>
   <string name="message_options">Options du message</string>
   <string name="copy_text">Copier le texte</string>
   <string name="copy_original_url">Copier l\'URL</string>
   <string name="send_again">Envoyer de nouveau</string>
-  <string name="image_url">URL de l\'image</string>
   <string name="message_text">Message texte</string>
   <string name="url_copied_to_clipboard">URL copiée dans le presse-papier</string>
   <string name="message_copied_to_clipboard">Message copié dans le presse-papier</string>

src/main/res/values-gl/strings.xml 🔗

@@ -48,7 +48,6 @@
   <string name="send_otr_message">Enviar mensaxe cifrado con OTR</string>
   <string name="send_pgp_message">Enviar mensaxe cifrado con OpenPGP</string>
   <string name="your_nick_has_been_changed">Modificouse o teu apodo</string>
-  <string name="download_image">Descargar imaxe</string>
   <string name="send_unencrypted">Enviar sen cifrar</string>
   <string name="decryption_failed">Fallou o descifrado. Quizábeis non teñas a clave privada apropiada.</string>
   <string name="openkeychain_required">OpenKeychain</string>

src/main/res/values-id/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Kirim pesan terenskripsi OTR</string>
   <string name="send_pgp_message">Kirim pesan terenskripsi OpenPGP</string>
   <string name="your_nick_has_been_changed">Nick kamu telah dirubah</string>
-  <string name="download_image">Unduh Gambar</string>
   <string name="send_unencrypted">Kirim tidak terenkripsi</string>
   <string name="decryption_failed">Dekripsi gagal. Mungkin Anda tidak memiliki kunci pribadi yang tepat.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">Conference ini hanya untuk member terdaftar</string>
   <string name="conference_kicked">Anda telah ditendang dari conference ini</string>
   <string name="using_account">menggunakan akun %s</string>
-  <string name="checking_image">Mengecek gambar di host HTTP</string>
-  <string name="image_file_deleted">Berkas gambar telah dihapus</string>
   <string name="not_connected_try_again">Anda tidak terhubung. Coba lagi nanti</string>
-  <string name="check_image_filesize">Cek ukuran berkas gambar</string>
   <string name="message_options">Opsi pesan</string>
   <string name="copy_text">Salin teks</string>
   <string name="copy_original_url">Salin URL asli</string>
   <string name="send_again">Kirim lagi</string>
-  <string name="image_url">URL gambar</string>
   <string name="message_text">Pesan teks</string>
   <string name="url_copied_to_clipboard">URL disalin ke clipboard</string>
   <string name="message_copied_to_clipboard">Pesan disalin ke clipboard</string>

src/main/res/values-it/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Messaggio OTR</string>
   <string name="send_pgp_message">Messaggio OpenPGP</string>
   <string name="your_nick_has_been_changed">Il tuo nome utente è stato cambiato</string>
-  <string name="download_image">Scarica Immagine</string>
   <string name="send_unencrypted">Invia non cifrato</string>
   <string name="decryption_failed">Decifrazione fallita. Forse non disponi della chiave privata corretta.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">Questa conferenza è solo per membri</string>
   <string name="conference_kicked">Sei stato buttato fuori dalla conferenza</string>
   <string name="using_account">usando l’utente %s</string>
-  <string name="checking_image">Controlla immagine su HTTP</string>
-  <string name="image_file_deleted">Il file dell’immagine è stato cancellato</string>
   <string name="not_connected_try_again">Non sei connesso. Riprova più tardi</string>
-  <string name="check_image_filesize">Controlla le dimensioni dell’immagine</string>
   <string name="message_options">Opzioni del messaggio</string>
   <string name="copy_text">Copia testo</string>
   <string name="copy_original_url">Copia URL originale</string>
   <string name="send_again">Invia di nuovo</string>
-  <string name="image_url">URL immagine</string>
   <string name="message_text">Messaggio di testo</string>
   <string name="url_copied_to_clipboard">URL copiato</string>
   <string name="message_copied_to_clipboard">Messaggio copiato</string>

src/main/res/values-iw/strings.xml 🔗

@@ -66,7 +66,6 @@
   <string name="send_otr_message">שלח הודעה מוצפנת OTR</string>
   <string name="send_pgp_message">שלח הודעה מוצפנת OpenPGP</string>
   <string name="your_nick_has_been_changed">שם כינוי שלך השתנה</string>
-  <string name="download_image">הורד תצלום</string>
   <string name="send_unencrypted">שלח לא מוצפנת</string>
   <string name="decryption_failed">פענוח נכשל. אולי אין לך את המפתח הפרטי המתאים.</string>
   <string name="openkeychain_required">OpenKeychain</string>

src/main/res/values-ja/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">OTR 暗号化メッセージを送信</string>
   <string name="send_pgp_message">OpenPGP 暗号化メッセージを送信</string>
   <string name="your_nick_has_been_changed">あなたのニックネームが変更されました</string>
-  <string name="download_image">画像のダウンロード</string>
   <string name="send_unencrypted">暗号化されていない送信</string>
   <string name="decryption_failed">復号化に失敗しました。おそらく秘密鍵が正しくないようです。</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">この会議はメンバーのみです</string>
   <string name="conference_kicked">あなたはこの会議からキックされました</string>
   <string name="using_account">アカウント %s を使用</string>
-  <string name="checking_image">HTTP ホストの画像を確認中</string>
-  <string name="image_file_deleted">画像ファイルは削除されました</string>
   <string name="not_connected_try_again">接続されていません。後でもう一度お試しください</string>
-  <string name="check_image_filesize">画像ファイルのサイズを確認</string>
   <string name="message_options">メッセージオプション</string>
   <string name="copy_text">テキストをコピー</string>
   <string name="copy_original_url">元の URL をコピー</string>
   <string name="send_again">再送</string>
-  <string name="image_url">画像 URL</string>
   <string name="message_text">メッセージテキスト</string>
   <string name="url_copied_to_clipboard">URL をクリップボードにコピーしました</string>
   <string name="message_copied_to_clipboard">メッセージをクリップボードにコピーしました</string>

src/main/res/values-ko/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">OTR 암호화된 메세지 전송 </string>
   <string name="send_pgp_message">OpenPGP 암호화된 메세지 전송 </string>
   <string name="your_nick_has_been_changed">닉네임이 변경되었습니다 </string>
-  <string name="download_image">이미지 다운로드 </string>
   <string name="send_unencrypted">암호화하지 않고 전송 </string>
   <string name="decryption_failed">복호화 실패. 올바른 개인 키를 가지고 있지 않은 것 같습니다. </string>
   <string name="openkeychain_required">OpenKeychain </string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">이 회의는 멤버 전용입니다 </string>
   <string name="conference_kicked">당신은 이 회의에서 추방되었습니다  </string>
   <string name="using_account">using account %s</string>
-  <string name="checking_image">HTTP 호스트에서 이미지 확인중 </string>
-  <string name="image_file_deleted">이미지 파일이 삭제되었습니다 </string>
   <string name="not_connected_try_again">접속중이 아닙니다. 다시 시도하세요. </string>
-  <string name="check_image_filesize">이미지 파일 크기 확인 </string>
   <string name="message_options">메세지 설정 </string>
   <string name="copy_text">텍스트 복사 </string>
   <string name="copy_original_url">원본 URL 복사 </string>
   <string name="send_again">다시 보내기 </string>
-  <string name="image_url">이미지 URL </string>
   <string name="message_text">메세지 텍스트 </string>
   <string name="url_copied_to_clipboard">URL이 클립보드에 복사되었습니다 </string>
   <string name="message_copied_to_clipboard">메세지가 클립보드에 복사되었습니다 </string>

src/main/res/values-nl/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Verstuur OTR versleuteld bericht</string>
   <string name="send_pgp_message">Verstuur OpenPGP versleuteld bericht</string>
   <string name="your_nick_has_been_changed">Je naam is veranderd</string>
-  <string name="download_image">Download afbeelding</string>
   <string name="send_unencrypted">Verstuur onversleuteld</string>
   <string name="decryption_failed">Ontsleutelen mislukt. Misschien heb je niet de juiste private sleutel.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,13 @@
   <string name="conference_members_only">Dit groepsgesprek is enkel voor leden</string>
   <string name="conference_kicked">Je bent uit dit groepsgesprek geschopt</string>
   <string name="using_account">account %s gebruiken</string>
-  <string name="checking_image">Afbeelding op HTTP host nakijken</string>
-  <string name="image_file_deleted">De afbeelding is verwijderd</string>
   <string name="not_connected_try_again">Je bent niet verbonden. Probeer later opnieuw</string>
-  <string name="check_image_filesize">Bekijk bestandsgrootte van afbeelding</string>
+  <string name="check_x_filesize">Bekijk bestandsgrootte van %s</string>
   <string name="message_options">Berichtopties</string>
   <string name="copy_text">Kopieer tekst</string>
   <string name="copy_original_url">Kopieer oorspronkelijke URL</string>
   <string name="send_again">Verstuur opnieuw</string>
-  <string name="image_url">AfbeeldingsURL</string>
+  <string name="file_url">Bestands-URL</string>
   <string name="message_text">Berichttekst</string>
   <string name="url_copied_to_clipboard">URL gekopieerd naar klembord</string>
   <string name="message_copied_to_clipboard">Bericht gekopieerd naar klembord</string>
@@ -451,4 +448,5 @@
   <string name="none">Geen</string>
   <string name="recently_used">Recent gebruikt</string>
   <string name="choose_quick_action">Kies snelle actie</string>
+  <string name="file_not_found_on_remote_host">Bestand niet gevonden op externe server</string>
 </resources>

src/main/res/values-pl/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Wyślij zaszyfrowaną wiadomość (OTR)</string>
   <string name="send_pgp_message">Wyślij zaszyfrowaną wiadomość (OpenPGP)</string>
   <string name="your_nick_has_been_changed">Twoja nazwa została zmieniona</string>
-  <string name="download_image">Pobierz obraz</string>
   <string name="send_unencrypted">Wyślij bez szyfrowania</string>
   <string name="decryption_failed">Nie można odszyfrować. Sprawdź poprawność klucza prywatnego.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">To jest zamknięty pokój</string>
   <string name="conference_kicked">Wyrzucono cię z konferencji</string>
   <string name="using_account">używając konta %s</string>
-  <string name="checking_image">Sprawdzanie obrazka na hoście HTTP</string>
-  <string name="image_file_deleted">Obraz został usunięty</string>
   <string name="not_connected_try_again">Brak połączenia. Spróbuj ponownie później</string>
-  <string name="check_image_filesize">Sprawdź rozmiar pliku</string>
   <string name="message_options">Opcje wiadomości</string>
   <string name="copy_text">Skopiuj tekst</string>
   <string name="copy_original_url">Skopiuj oryginalny URL</string>
   <string name="send_again">Wyślij ponownie</string>
-  <string name="image_url">URL obrazu</string>
   <string name="message_text">Treść wiadomości</string>
   <string name="url_copied_to_clipboard">URL obrazu został skopiowany do schowka</string>
   <string name="message_copied_to_clipboard">Wiadomość została skopiowana do schowka</string>

src/main/res/values-pt/strings.xml 🔗

@@ -0,0 +1,297 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<resources>
+  <string name="action_settings">Configurações</string>
+  <string name="action_add">Nova conversa</string>
+  <string name="action_accounts">Gerenciar contas</string>
+  <string name="action_end_conversation">Finalizar essa conversa</string>
+  <string name="action_contact_details">Detalhes do contato</string>
+  <string name="action_muc_details">Detalhes da conferência</string>
+  <string name="action_secure">Conversa segura</string>
+  <string name="action_add_account">Adicionar conta</string>
+  <string name="action_edit_contact">Editar nome</string>
+  <string name="action_add_phone_book">Adicionar aos contatos</string>
+  <string name="action_block_contact">Bloquear contato</string>
+  <string name="action_unblock_contact">Desbloquear contato</string>
+  <string name="action_block_domain">Bloquear domínio</string>
+  <string name="action_unblock_domain">Desbloquear domínio</string>
+  <string name="title_activity_manage_accounts">Gerenciar contas</string>
+  <string name="title_activity_settings">Configurações</string>
+  <string name="title_activity_conference_details">Detalhes da conferência</string>
+  <string name="title_activity_contact_details">Detalhes do contato</string>
+  <string name="title_activity_sharewith">Compartilhar conversa</string>
+  <string name="title_activity_start_conversation">Iniciar conversa</string>
+  <string name="title_activity_choose_contact">Escolher contato</string>
+  <string name="title_activity_block_list">Bloquear lista</string>
+  <string name="just_now">agora há pouco</string>
+  <string name="minute_ago">1 minuto atrás</string>
+  <string name="minutes_ago">%d minutos atrás</string>
+  <string name="unread_conversations">Conversas não lidas</string>
+  <string name="sending">enviando...</string>
+  <string name="encrypted_message">Descriptografando mensagem. Por favor aguarde...</string>
+  <string name="nick_in_use">O apelido já está em uso</string>
+  <string name="admin">Administrador</string>
+  <string name="owner">Dono</string>
+  <string name="moderator">Moderador</string>
+  <string name="participant">Participante</string>
+  <string name="visitor">Visitante</string>
+  <string name="block_contact_text">Deseja bloquear o o recebimento de mensagens de %s?</string>
+  <string name="unblock_contact_text">Deseja desbloquear o recebimento de mensagens de %s?</string>
+  <string name="block_domain_text">Bloquear todos os contatos de %s?</string>
+  <string name="unblock_domain_text">Desbloquear todos os contatos de %s?</string>
+  <string name="contact_blocked">Contato bloqueado</string>
+  <string name="remove_bookmark_text">Você deseja remover %s dos favoritos? A conversa associada a esse favorito não será removida.</string>
+  <string name="register_account">Registre uma nova conta no servidor</string>
+  <string name="change_password_on_server">Altere a senha no servidor</string>
+  <string name="share_with">Compartilhar com...</string>
+  <string name="start_conversation">Iniciar conversa</string>
+  <string name="invite_contact">Convidar contato</string>
+  <string name="contacts">Contatos</string>
+  <string name="cancel">Cancelar</string>
+  <string name="set">Definir</string>
+  <string name="add">Adicionar</string>
+  <string name="edit">Editar</string>
+  <string name="delete">Remover</string>
+  <string name="block">Bloquear</string>
+  <string name="unblock">Desbloquear</string>
+  <string name="save">Salvar</string>
+  <string name="ok">OK</string>
+  <string name="crash_report_title">A conversa foi interrompida</string>
+  <string name="crash_report_message">Ao enviar os stack traces você ajudará o desenvolvimento do aplicativo\n<b>Atenção:</b> Isso usará a sua conta XMPP para enviar o stack trace para o desenvolvedor.</string>
+  <string name="send_now">Enviar agora</string>
+  <string name="send_never">Não pergunte novamente</string>
+  <string name="problem_connecting_to_account">Não foi possível se conectar à conta</string>
+  <string name="problem_connecting_to_accounts">Não foi possível conectar a múltiplas contas</string>
+  <string name="touch_to_fix">Toque aqui para gerenciar suas contas</string>
+  <string name="attach_file">Anexar arquivo</string>
+  <string name="not_in_roster">O contato não está no seu rol</string>
+  <string name="add_contact">Adicionar contato</string>
+  <string name="send_failed">a entrega falhou</string>
+  <string name="send_rejected">rejeitado</string>
+  <string name="preparing_image">Preparando a imagem para transmissão</string>
+  <string name="action_clear_history">Limpar histórico</string>
+  <string name="clear_conversation_history">Limpar o histórico de conversas</string>
+  <string name="clear_histor_msg">Você deseja remover todas as mensagens nessa conversa?\n\n&lt;b&gt;Atenção:&lt;b&gt; Isso não irá influenciar mensagens salvas em outros dispositivos ou servidores.</string>
+  <string name="delete_messages">Remover mensagens</string>
+  <string name="also_end_conversation">Finalizar essa conversa ao final</string>
+  <string name="choose_presence">Escolha a presença do contato</string>
+  <string name="send_plain_text_message">Enviar mensagem de texto puro</string>
+  <string name="send_otr_message">Enviar mensagem criptografada com OTR</string>
+  <string name="send_pgp_message">Enviar mensagem criptografada com OpenPGP</string>
+  <string name="your_nick_has_been_changed">Seu apelido foi alterado</string>
+  <string name="send_unencrypted">Enviar sem criptografia</string>
+  <string name="decryption_failed">A desencriptação falhou. Talvez você não tenha a chave privada correta.</string>
+  <string name="openkeychain_required">OpenKeychain</string>
+  <string name="openkeychain_required_long">Conversas utiliza um aplicativo de terceiro chamado <b>OpenKeychain</b> para criptografar e descriptografar mensagens e gerenciar suas chaves públicas.\n\nOpenKeychain é licenciado sob a licença GPLv3 e está disponível no F-Droid e Google Play.\n\n<small>(Por favor reinicie Coversas em seguida)</small></string>
+  <string name="restart">Reiniciar</string>
+  <string name="install">Instalar</string>
+  <string name="offering">oferecendo...</string>
+  <string name="waiting">aguardando...</string>
+  <string name="no_pgp_key">Nenhuma chave OpenPGP encontrado</string>
+  <string name="pref_general">Geral</string>
+  <string name="pref_xmpp_resource">Recurso XMPP</string>
+  <string name="pref_xmpp_resource_summary">O nome pelo qual esse cliente se identifica</string>
+  <string name="pref_accept_files">Aceitar arquivos</string>
+  <string name="pref_accept_files_summary">Automaticamente aceita arquivos menores que...</string>
+  <string name="pref_notification_settings">Configurações de notificação</string>
+  <string name="pref_notifications">Notificações</string>
+  <string name="pref_notifications_summary">Notificar quando uma nova mensagem for recebida</string>
+  <string name="pref_vibrate">Vibrar</string>
+  <string name="pref_vibrate_summary">Vibrar também quando uma nova mensagem for recebida</string>
+  <string name="pref_sound">Som</string>
+  <string name="pref_sound_summary">Tocar um som com a notificação</string>
+  <string name="pref_conference_notifications">Notificações de conferência</string>
+  <string name="pref_conference_notifications_summary">Sempre notificar quando uma nova mensagem de conferencia for recebida ao invés de apenas quando a mesma for ressaltada</string>
+  <string name="pref_notification_grace_period">Período de carência da notificação</string>
+  <string name="pref_notification_grace_period_summary">Desativar notificações por um curto período após a copia oculta ser recebida</string>
+  <string name="pref_advanced_options">Opções avançadas</string>
+  <string name="pref_never_send_crash">Nunca enviar relatórios de quebra</string>
+  <string name="pref_never_send_crash_summary">Ao enviar os stack traces você ajuda o desenvolvimento do aplicativo</string>
+  <string name="pref_confirm_messages">Confirmar mensanges</string>
+  <string name="pref_confirm_messages_summary">Permitir que um contato saiba quando você recebeu e leu uma mensagem</string>
+  <string name="pref_ui_options">Opções de UI</string>
+  <string name="openpgp_error">O OpenKeychain informou um erro</string>
+  <string name="error_decrypting_file">Erro de I/O de critpografia</string>
+  <string name="accept">Aceitar</string>
+  <string name="error">Ocorreu um erro</string>
+  <string name="pref_grant_presence_updates">Permitir atualizações de presença</string>
+  <string name="subscriptions">Inscrições</string>
+  <string name="your_account">Sua conta</string>
+  <string name="keys">Chaves</string>
+  <string name="send_presence_updates">Enviar atualizações de presença</string>
+  <string name="receive_presence_updates">Receber atualizações de presença</string>
+  <string name="ask_for_presence_updates">Pedir atualizações de presença</string>
+  <string name="attach_choose_picture">Escolher imagem</string>
+  <string name="attach_take_picture">Tirar foto</string>
+  <string name="error_not_an_image_file">O arquivo selecionado não é uma imagem</string>
+  <string name="error_compressing_image">Erro ao converter o arquivo de imagem</string>
+  <string name="error_file_not_found">Arquivo não encontrado</string>
+  <string name="account_status_unknown">Desconhecido</string>
+  <string name="account_status_disabled">Temporariamente desabilitado</string>
+  <string name="account_status_online">Online</string>
+  <string name="account_status_connecting">Conectando\u2026</string>
+  <string name="account_status_offline">Offline</string>
+  <string name="account_status_unauthorized">Não autorizado</string>
+  <string name="account_status_not_found">Servidor não encontrado</string>
+  <string name="account_status_no_internet">Sem conectividade</string>
+  <string name="account_status_regis_fail">O registro falhou</string>
+  <string name="account_status_regis_conflict">O nome de usuário já está em uso</string>
+  <string name="account_status_regis_success">Registro efetuado com sucesso</string>
+  <string name="account_status_regis_not_sup">O servidor não aceita o registro</string>
+  <string name="account_status_security_error">Erro de segurança</string>
+  <string name="account_status_incompatible_server">Servidor incompatível</string>
+  <string name="encryption_choice_none">Texto puro</string>
+  <string name="encryption_choice_otr">OTR</string>
+  <string name="encryption_choice_pgp">OpenPGP</string>
+  <string name="mgmt_account_edit">Editar conta</string>
+  <string name="mgmt_account_delete">Remover conta</string>
+  <string name="mgmt_account_disable">Desabilitar temporariamente</string>
+  <string name="mgmt_account_publish_avatar">Publicar o avatar</string>
+  <string name="mgmt_account_publish_pgp">Publicar chave pública OpenPGP</string>
+  <string name="mgmt_account_enable">Ativar conta</string>
+  <string name="mgmt_account_are_you_sure">Tem certeza?</string>
+  <string name="attach_record_voice">Gravar voz</string>
+  <string name="account_settings_jabber_id">ID Jabber</string>
+  <string name="account_settings_password">Senha</string>
+  <string name="account_settings_example_jabber_id">nomedeusuario@exemplo.com</string>
+  <string name="account_settings_confirm_password">Confirmar senha</string>
+  <string name="password">Senha</string>
+  <string name="confirm_password">Confirmar senha</string>
+  <string name="passwords_do_not_match">As senhas não combina</string>
+  <string name="invalid_jid">Esse não é um ID Jabber válido</string>
+  <string name="error_out_of_memory">Memória insuficiente. A imagem é muito grande</string>
+  <string name="add_phone_book_text">Você tem certeza que deseja adicionar %s à sua lista de contato do telefone?</string>
+  <string name="contact_status_online">online</string>
+  <string name="contact_status_free_to_chat">disponível para conversa</string>
+  <string name="contact_status_away">fora</string>
+  <string name="contact_status_extended_away">fora extendido</string>
+  <string name="contact_status_do_not_disturb">não pertube</string>
+  <string name="contact_status_offline">offline</string>
+  <string name="muc_details_conference">Conferência</string>
+  <string name="muc_details_other_members">Outros Membros</string>
+  <string name="server_info_show_more">Informações do servior</string>
+  <string name="server_info_available">disponível</string>
+  <string name="server_info_unavailable">indisponível</string>
+  <string name="missing_public_keys">Anúncios de ausência de chave pública</string>
+  <string name="last_seen_now">visto agora há pouco</string>
+  <string name="last_seen_min">visto há 1 minuto atrás</string>
+  <string name="last_seen_mins">visto %d minutos atrás</string>
+  <string name="last_seen_hour">visto há 1 hora atrás</string>
+  <string name="last_seen_hours">visto %d horas atrás</string>
+  <string name="last_seen_day">visto há 1 dia atrás</string>
+  <string name="last_seen_days">visto %d dias atrás</string>
+  <string name="never_seen">nunca visto</string>
+  <string name="install_openkeychain">Mensagem criptografada. Por favor instale o OpenKeychain para desencriptar</string>
+  <string name="unknown_otr_fingerprint">Impressão OTR inválida</string>
+  <string name="openpgp_messages_found">Mensagens encriptadas com OpenPGP não encontrada</string>
+  <string name="reception_failed">A recepção falhou</string>
+  <string name="your_fingerprint">Sua impressão</string>
+  <string name="otr_fingerprint">Impressão OTR</string>
+  <string name="verify">Verificar</string>
+  <string name="decrypt">Desencriptar</string>
+  <string name="conferences">Conferências</string>
+  <string name="search">Buscar</string>
+  <string name="create_contact">Criar contato</string>
+  <string name="join_conference">Se juntar à conferência</string>
+  <string name="delete_contact">Remover contato</string>
+  <string name="view_contact_details">Ver os detalhes dos contatos</string>
+  <string name="block_contact">Bloquear contato</string>
+  <string name="unblock_contact">Desbloquear contato</string>
+  <string name="create">Criar</string>
+  <string name="contact_already_exists">O contato já existe</string>
+  <string name="join">Juntar</string>
+  <string name="conference_address">Endereço da conferência</string>
+  <string name="conference_address_example">sala@conferencia.example.com</string>
+  <string name="save_as_bookmark">Salvar como favorito</string>
+  <string name="delete_bookmark">Salvar favorito</string>
+  <string name="bookmark_already_exists">O favorito já existe</string>
+  <string name="you">Você</string>
+  <string name="action_edit_subject">Editar o assunto da conferência</string>
+  <string name="conference_not_found">Conferência não encontrada</string>
+  <string name="leave">Sair</string>
+  <string name="contact_added_you">Contato adicionado à sua lista de contato</string>
+  <string name="add_back">Adicionar novamente</string>
+  <string name="contact_has_read_up_to_this_point">%s leu até esse ponto</string>
+  <string name="publish">Publicar</string>
+  <string name="touch_to_choose_picture">Toque o avatar para escolher uma imagem da sua galeria</string>
+  <string name="publish_avatar_explanation">Por favor observe: Todos inscritos na sua atualização de presença poderá ver essa imagem</string>
+  <string name="publishing">Publicando...</string>
+  <string name="error_publish_avatar_server_reject">O servidor rejeitou sua publicação</string>
+  <string name="error_publish_avatar_converting">Algo deu errado ao converter sua imagem</string>
+  <string name="error_saving_avatar">Não foi possível salvar o avatar no disco</string>
+  <string name="or_long_press_for_default">(Ou mantenha pressionado por um tempo para voltar para o padrão)</string>
+  <string name="error_publish_avatar_no_server_support">O seu servidor não suporta a publicação de avatares</string>
+  <string name="private_message">sussurado</string>
+  <string name="private_message_to">para %s</string>
+  <string name="send_private_message_to">Enviar mensagem privada para %s</string>
+  <string name="connect">Conectar</string>
+  <string name="account_already_exists">Essa conta já existe</string>
+  <string name="next">Próximo</string>
+  <string name="server_info_session_established">Sessão atual estebelecida</string>
+  <string name="additional_information">Informação adicional</string>
+  <string name="skip">Pular</string>
+  <string name="disable_notifications">Desativar notificações</string>
+  <string name="disable_notifications_for_this_conversation">Desativar notificações para essa conversa</string>
+  <string name="notifications_disabled">As notificações foram desativadas</string>
+  <string name="enable">Ativar</string>
+  <string name="conference_requires_password">Essa conferencia requer uma senha</string>
+  <string name="enter_password">Informar a senha</string>
+  <string name="missing_presence_updates">Atualizações de presença inexistente para o contato</string>
+  <string name="request_now">Solicitar agora</string>
+  <string name="delete_fingerprint">Remover impressão</string>
+  <string name="sure_delete_fingerprint">Tem certeza que deseja remover essa assinatura?</string>
+  <string name="pref_encryption_settings">Configurações de criptografia</string>
+  <string name="pref_force_encryption">Forçar criptografia ponto-a-ponto</string>
+  <string name="pref_force_encryption_summary">Sempre envie mensagem criptografada (exceto para conferências)</string>
+  <string name="pref_dont_save_encrypted">Não salve mensagens criptografadas</string>
+  <string name="pref_dont_save_encrypted_summary">Atenção: Isso pode levar a perda de mensagens</string>
+  <string name="pref_expert_options">Opções de expert</string>
+  <string name="pref_expert_options_summary">Por favor tenha cuidado com essas</string>
+  <string name="title_activity_about">Sobre Conversas</string>
+  <string name="pref_about_conversations_summary">Informação de licença e construção</string>
+  <string name="title_pref_quiet_hours">Horas de tranquilidade</string>
+  <string name="title_pref_quiet_hours_start_time">Hora de início</string>
+  <string name="title_pref_quiet_hours_end_time">Hora de fim</string>
+  <string name="title_pref_enable_quiet_hours">Habilitar hora de tranquilidade</string>
+  <string name="pref_quiet_hours_summary">Notificações serão silenciadas nas horas de tranquilidade</string>
+  <string name="pref_use_larger_font">Aumentar o tamanho da fonte</string>
+  <string name="pref_use_larger_font_summary">Usar fontes maiores por todo aplicativo</string>
+  <string name="pref_use_send_button_to_indicate_status">O botão de enviar indica o estado</string>
+  <string name="pref_use_indicate_received">Solicitar recibo de mensagem</string>
+  <string name="pref_use_indicate_received_summary">Mensagens recebidas serão marcadas com um check verde se suportado</string>
+  <string name="pref_use_send_button_to_indicate_status_summary">Colorir o botão de enviar para indicar o estado do contato</string>
+  <string name="pref_expert_options_other">Outros</string>
+  <string name="pref_conference_name">Nome da conferência</string>
+  <string name="pref_conference_name_summary">Use o assunto da sala ao invés do JID para identificar as conferências</string>
+  <string name="toast_message_otr_fingerprint">Impressão OTR copiada para a área de transferência!</string>
+  <string name="try_again">Tentar novamente</string>
+  <string name="finish">Finalizar</string>
+  <string name="perform_action_with">Realizar a ação com</string>
+  <string name="no_affiliation">Sem afiliação</string>
+  <string name="no_role">Sem papel</string>
+  <string name="member">Membro</string>
+  <string name="advanced_mode">Modo avançado</string>
+  <string name="one_hour">1 hora</string>
+  <string name="two_hours">2 horas</string>
+  <string name="eight_hours">8 horas</string>
+  <string name="until_further_notice">Até segunda ordem</string>
+  <string name="pref_input_options">Opções de entrada</string>
+  <string name="pref_enter_is_send">O enter envia</string>
+  <string name="pref_enter_is_send_summary">Use o enter para enviar a mensagem</string>
+  <string name="pref_display_enter_key">Exibir tecla enter</string>
+  <string name="audio">áudio</string>
+  <string name="video">vídeo</string>
+  <string name="image">imagem</string>
+  <string name="pdf_document">Documento PDF</string>
+  <string name="apk">Aplicativo Android</string>
+  <string name="vcard">Contato</string>
+  <string name="sending_x_file">Enviando %s</string>
+  <string name="offering_x_file">Oferecendo %s</string>
+  <string name="contact_is_typing">%s está digitando...</string>
+  <string name="contact_has_stopped_typing">%s parou de digitar</string>
+  <string name="pref_chat_states">Notificações de digitação</string>
+  <string name="send_location">Enviar localização</string>
+  <string name="show_location">Exibir localização</string>
+  <string name="dialog_manage_certs_negativebutton">Cancelar</string>
+  <string name="pref_quick_action">Ação rápida</string>
+  <string name="none">Nada</string>
+</resources>

src/main/res/values-ro-rRO/strings.xml 🔗

@@ -79,7 +79,6 @@
   <string name="send_otr_message">Trimite mesaj criptat cu OTR</string>
   <string name="send_pgp_message">Trimite mesaj criptat cu OpenPGP</string>
   <string name="your_nick_has_been_changed">Numele tau a fost schimbat</string>
-  <string name="download_image">Copiaza imagine</string>
   <string name="send_unencrypted">Trimite necriptat</string>
   <string name="decryption_failed">Decriptia a esuat. Poate nu ai cheia privata corecta.</string>
   <string name="openkeychain_required">OpenKeychain</string>

src/main/res/values-ru/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Отправить OTR защифрованное сообщение</string>
   <string name="send_pgp_message">Отправить OpenPGP защифрованное сообщение</string>
   <string name="your_nick_has_been_changed">Ваш псевдоним был изменен</string>
-  <string name="download_image">Загрузить изображение</string>
   <string name="send_unencrypted">Отправить в незашифрованном виде</string>
   <string name="decryption_failed">Расшифровка не удалась. Вероятно, что у вас нет надлежащего ключа.</string>
   <string name="openkeychain_required">Установите OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">Эта конференция требует членства</string>
   <string name="conference_kicked">Вы были удалены из конференции</string>
   <string name="using_account">использовать учётную запись %s</string>
-  <string name="checking_image">Проверка изображения на узле HTTP</string>
-  <string name="image_file_deleted">Файл изображения был удалён</string>
   <string name="not_connected_try_again">Вы неподключены. Попробуйте позже</string>
-  <string name="check_image_filesize">Проверить размер файла изображения</string>
   <string name="message_options">Опции сообщения</string>
   <string name="copy_text">Копировать текст</string>
   <string name="copy_original_url">Копировать адрес ссылки</string>
   <string name="send_again">Отправить ещё раз</string>
-  <string name="image_url">Адрес изображения</string>
   <string name="message_text">Текст сообщения</string>
   <string name="url_copied_to_clipboard">Ссылка скопирована в буфер обмена</string>
   <string name="message_copied_to_clipboard">Сообщение скопировано в буфер обмена</string>

src/main/res/values-sk/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Poslať OTR šifrovanú správu</string>
   <string name="send_pgp_message">Poslať OpenPGP šifrovanú správu</string>
   <string name="your_nick_has_been_changed">Prezývka sa zmenila</string>
-  <string name="download_image">Stiahnuť obrázok</string>
   <string name="send_unencrypted">Poslať nešifrované</string>
   <string name="decryption_failed">Zašifrovanie zlyhalo. Možno nemáte správny privátny kľúč.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,13 @@
   <string name="conference_members_only">Táto konverzácia je iba pre členov</string>
   <string name="conference_kicked">Vyčlenili vás z tejto konverzácie</string>
   <string name="using_account">Používa sa účet %s</string>
-  <string name="checking_image">Overuje sa obrázok na serveri HTTP</string>
-  <string name="image_file_deleted">Súbor s obrázkom bol vymazaný</string>
   <string name="not_connected_try_again">Nie ste pripojený. Skúste to neskôr</string>
-  <string name="check_image_filesize">Overiť veľkosť obrázku</string>
+  <string name="check_x_filesize">Overiť %s veľkosť</string>
   <string name="message_options">Možnosti správy</string>
   <string name="copy_text">Skopírovať text</string>
   <string name="copy_original_url">Skopírovať originálny URL</string>
   <string name="send_again">Poslať znova</string>
-  <string name="image_url">Obrázok URL</string>
+  <string name="file_url">URL súbor</string>
   <string name="message_text">Textová správa</string>
   <string name="url_copied_to_clipboard">URL skopírovaný do schránky</string>
   <string name="message_copied_to_clipboard">Správa skopírovaná do schránky</string>
@@ -438,6 +435,11 @@
   <string name="dialog_manage_certs_title">Odstrániť certifikáty</string>
   <string name="dialog_manage_certs_positivebutton">Vymazať výber</string>
   <string name="dialog_manage_certs_negativebutton">Zrušiť</string>
+  <plurals name="toast_delete_certificates">
+    <item quantity="one">%d certifikátu vymazaných</item>
+    <item quantity="few">%d certifikátu vymazaných</item>
+    <item quantity="other">%d certifikátov vymazaných</item>
+  </plurals>
   <plurals name="select_contact">
     <item quantity="one">Vybrať %d kontaktu</item>
     <item quantity="few">Vybrať %d kontaktu</item>
@@ -448,4 +450,5 @@
   <string name="none">Žiadny</string>
   <string name="recently_used">Naposledy použitý</string>
   <string name="choose_quick_action">Vybrať rýchlu voľbu</string>
+  <string name="file_not_found_on_remote_host">Súbor sa na vzdialenom serveri nenašiel</string>
 </resources>

src/main/res/values-sr/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Пошаљи ОТР шифровану поруку</string>
   <string name="send_pgp_message">Пошаљи ОпенПГП шифровану поруку</string>
   <string name="your_nick_has_been_changed">Ваш надимак је промењен</string>
-  <string name="download_image">Преузми слику</string>
   <string name="send_unencrypted">Пошаљи нешифровано</string>
   <string name="decryption_failed">Шифровање није успело. Можда немате одговарајући лични кључ.</string>
   <string name="openkeychain_required">Отворени кључарник</string>
@@ -289,15 +288,14 @@
   <string name="conference_members_only">Ова конференција је само за чланове</string>
   <string name="conference_kicked">Шутнути сте из ове конференције</string>
   <string name="using_account">преко налога %s</string>
-  <string name="checking_image">Проверавам слику на ХТТП домаћину</string>
-  <string name="image_file_deleted">Ова слика је обрисана</string>
+  <string name="checking_x">Проверавам %s на ХТТП домаћину</string>
   <string name="not_connected_try_again">Нисте повезани. Покушајте поново касније</string>
-  <string name="check_image_filesize">Провери величину слике</string>
+  <string name="check_x_filesize">Провери величину %s</string>
   <string name="message_options">Опције поруке</string>
   <string name="copy_text">Копирај текст</string>
   <string name="copy_original_url">Копирај изворни УРЛ</string>
   <string name="send_again">Пошаљи поново</string>
-  <string name="image_url">УРЛ слике</string>
+  <string name="file_url">УРЛ фајла</string>
   <string name="message_text">Текст поруке</string>
   <string name="url_copied_to_clipboard">УРЛ је копиран на клипборд</string>
   <string name="message_copied_to_clipboard">Порука је копирана на клипборд</string>
@@ -453,4 +451,6 @@
   <string name="none">Ниједна</string>
   <string name="recently_used">Недавно коришћена</string>
   <string name="choose_quick_action">Изаберите брзу радњу</string>
+  <string name="file_not_found_on_remote_host">Фајл није нађен на удаљеном серверу</string>
+  <string name="search_for_contacts_or_groups">Тражите контакте или групе</string>
 </resources>

src/main/res/values-sv/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">Skicka OTR-krypterat meddelande</string>
   <string name="send_pgp_message">Skicka OpenPGP-krypterat meddelande</string>
   <string name="your_nick_has_been_changed">Ditt nick har ändrats</string>
-  <string name="download_image">Ladda ner bild</string>
   <string name="send_unencrypted">Skicka okrypterat</string>
   <string name="decryption_failed">Avkryptering misslyckades. Du har kanske kanske inte rätt privat nyckel.</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,14 @@
   <string name="conference_members_only">Medlemsskap krävs för denna konferens</string>
   <string name="conference_kicked">Du har blivit utsparkad från denna konferens</string>
   <string name="using_account">använder konto %s</string>
-  <string name="checking_image">Kontrollerar bild på HTTP host</string>
-  <string name="image_file_deleted">Bildfilen har blivit borttagen</string>
+  <string name="checking_x">Kontrollerar %s på webbserver</string>
   <string name="not_connected_try_again">Du är inte ansluten. Försök igen senare</string>
-  <string name="check_image_filesize">Kontrollera bildens filstorlek</string>
+  <string name="check_x_filesize">Kontrollera storleken på %s</string>
   <string name="message_options">Meddelandealternativ</string>
   <string name="copy_text">Kopiera text</string>
   <string name="copy_original_url">Kopiera orginal-URL</string>
   <string name="send_again">Skicka igen</string>
-  <string name="image_url">Bild-URL</string>
+  <string name="file_url">Fil URL</string>
   <string name="message_text">Meddelandetext</string>
   <string name="url_copied_to_clipboard">URL kopierad till urklipp</string>
   <string name="message_copied_to_clipboard">Meddelande kopierat till urklipp</string>
@@ -451,4 +449,6 @@
   <string name="none">Ingen</string>
   <string name="recently_used">Senast använd</string>
   <string name="choose_quick_action">Välj snabbfunktion</string>
+  <string name="file_not_found_on_remote_host">Filen hittas ej på servern</string>
+  <string name="search_for_contacts_or_groups">Sök efter kontakter eller grupper</string>
 </resources>

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/primary</item>
-        <item name="android:colorPrimaryDark">@color/primarydark</item>
+        <item name="android:colorPrimary">@color/green500</item>
+        <item name="android:colorPrimaryDark">@color/green700</item>
         <item name="android:colorAccent">@color/accent</item>
 
         <item name="TextSizeInfo">12sp</item>

src/main/res/values-zh-rCN/strings.xml 🔗

@@ -80,7 +80,6 @@
   <string name="send_otr_message">发送 OTR 加密信息</string>
   <string name="send_pgp_message">发送 OpenPGP 加密信息</string>
   <string name="your_nick_has_been_changed">昵称修改成功</string>
-  <string name="download_image">下载图片</string>
   <string name="send_unencrypted">不加密发送</string>
   <string name="decryption_failed">解密失败,可能是私钥不正确。</string>
   <string name="openkeychain_required">OpenKeychain</string>
@@ -289,15 +288,11 @@
   <string name="conference_members_only">此讨论组只允许成员加入</string>
   <string name="conference_kicked">你被从此讨论组踢出</string>
   <string name="using_account">用账户  %s</string>
-  <string name="checking_image">正在 HTTP 托管中检查图片</string>
-  <string name="image_file_deleted">此图片已经被删除</string>
   <string name="not_connected_try_again">你没有连接。请稍后重试</string>
-  <string name="check_image_filesize">检查图片文件尺寸</string>
   <string name="message_options">消息选项</string>
   <string name="copy_text">拷贝文本</string>
   <string name="copy_original_url">拷贝原始URL</string>
   <string name="send_again">再次发送</string>
-  <string name="image_url">图片 URL</string>
   <string name="message_text">消息文本</string>
   <string name="url_copied_to_clipboard">已经拷贝 URL 到剪贴板</string>
   <string name="message_copied_to_clipboard">消息已经拷贝到剪贴板</string>

src/main/res/values-zh-rTW/strings.xml 🔗

@@ -64,7 +64,6 @@
   <string name="send_otr_message">發送 OTR 加密訊息</string>
   <string name="send_pgp_message">發送 OpenPGP 加密訊息</string>
   <string name="your_nick_has_been_changed">用戶名稱修改成功</string>
-  <string name="download_image">下載圖片</string>
   <string name="send_unencrypted">不加密發送</string>
   <string name="decryption_failed">解密失敗,可能是私鑰不正確。</string>
   <string name="openkeychain_required">OpenKeychain</string>

src/main/res/values/colors.xml 🔗

@@ -1,18 +1,16 @@
 <?xml version="1.0" encoding="utf-8"?>
 <resources>
-
-    <color name="primary" type="color">#ff259b24</color>
-    <color name="primarydark" type="color">#ff0a7e07</color>
-    <color name="accent">#ff0091ea</color>
-    <color name="primarytext" type="color">#de000000</color>
-    <color name="secondarytext" type="color">#8a000000</color>
-    <color name="ondarktext" type="color">#fffafafa</color>
-    <color name="primarybackground" type="color">#fffafafa</color>
-    <color name="secondarybackground" type="color">#ffeeeeee</color>
-    <color name="darkbackground" type="color">#ff323232</color>
-    <color name="divider">#1f000000</color>
-    <color name="red">#fff44336</color>
-    <color name="orange">#ffff9800</color>
-    <color name="green">#ff259b24</color>
-
+	<color name="green500">#ff259b24</color>
+	<color name="green700">#ff0a7e07</color>
+	<color name="accent">#ff0091ea</color>
+	<color name="black87">#de000000</color>
+	<color name="black54">#8a000000</color>
+	<color name="black12">#1f000000</color>
+	<color name="white">#ffffffff</color>
+	<color name="white70">#b2ffffff</color>
+	<color name="grey50">#fffafafa</color>
+	<color name="grey200">#ffeeeeee</color>
+	<color name="grey800">#ff424242</color>
+	<color name="red500">#fff44336</color>
+	<color name="orange500">#ffff9800</color>
 </resources>

src/main/res/values/strings.xml 🔗

@@ -273,7 +273,7 @@
 	<string name="pref_about_conversations_summary">Build and licensing information</string>
 	<string name="pref_about_message" translatable="false">
 			Conversations • the very last word in instant messaging.
-			\n\nCopyright © 2014 Daniel Gultsch
+			\n\nCopyright © 2014-2015 Daniel Gultsch
 			\n\nThis program is free software: you can redistribute it and/or modify
 			it under the terms of the GNU General Public License as published by
 			the Free Software Foundation, either version 3 of the License, or
@@ -316,8 +316,7 @@
 	<string name="conference_members_only">This conference is members only</string>
 	<string name="conference_kicked">You have been kicked from this conference</string>
 	<string name="using_account">using account %s</string>
-	<string name="checking_image">Checking image on HTTP host</string>
-	<string name="image_file_deleted">The image file has been deleted</string>
+	<string name="checking_x">Checking %s on HTTP host</string>
 	<string name="not_connected_try_again">You are not connected. Try again later</string>
 	<string name="check_x_filesize">Check %s size</string>
 	<string name="message_options">Message options</string>
@@ -479,4 +478,5 @@
 	<string name="recently_used">Most recently used</string>
 	<string name="choose_quick_action">Choose quick action</string>
 	<string name="file_not_found_on_remote_host">File not found on remote server</string>
+	<string name="search_for_contacts_or_groups">Search for contacts or groups</string>
 </resources>

src/main/res/values/styles.xml 🔗

@@ -2,7 +2,7 @@
     <style name="Divider">
         <item name="android:layout_width">match_parent</item>
         <item name="android:layout_height">1.5dp</item>
-        <item name="android:background">@color/divider</item>
+        <item name="android:background">@color/black12</item>
     </style>
     <style name="Tag">
 

src/main/res/values/themes.xml 🔗

@@ -38,8 +38,8 @@
     </style>
 
     <style name="ConversationsActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
-        <item name="android:background">@color/primary</item>
-        <item name="android:backgroundStacked">@color/primarydark</item>
+        <item name="android:background">@color/green500</item>
+        <item name="android:backgroundStacked">@color/green700</item>
         <item name="android:displayOptions">showHome|homeAsUp|showTitle</item>
         <item name="android:icon">@android:color/transparent</item>
     </style>