M66B 5 years ago
parent
commit
ba96b02f84
47 changed files with 129 additions and 719 deletions
  1. BIN
      .idea/caches/build_file_checksums.ser
  2. +0
    -1
      README.md
  3. +0
    -3
      app/build.gradle
  4. +0
    -1
      app/src/main/java/eu/faircode/email/ActivityCompose.java
  5. +0
    -1
      app/src/main/java/eu/faircode/email/ActivityView.java
  6. +24
    -31
      app/src/main/java/eu/faircode/email/AdapterAttachment.java
  7. +6
    -169
      app/src/main/java/eu/faircode/email/FragmentCompose.java
  8. +0
    -254
      app/src/main/java/eu/faircode/email/FragmentMessage.java
  9. +0
    -6
      app/src/main/res/menu/action_compose.xml
  10. +0
    -5
      app/src/main/res/menu/menu_view.xml
  11. +2
    -6
      app/src/main/res/values-af/strings.xml
  12. +2
    -6
      app/src/main/res/values-ar-rBH/strings.xml
  13. +2
    -6
      app/src/main/res/values-ar-rEG/strings.xml
  14. +2
    -6
      app/src/main/res/values-ar-rSA/strings.xml
  15. +2
    -6
      app/src/main/res/values-ar-rYE/strings.xml
  16. +2
    -6
      app/src/main/res/values-ar/strings.xml
  17. +2
    -6
      app/src/main/res/values-ca/strings.xml
  18. +2
    -6
      app/src/main/res/values-cs/strings.xml
  19. +2
    -6
      app/src/main/res/values-da/strings.xml
  20. +15
    -19
      app/src/main/res/values-de/strings.xml
  21. +2
    -6
      app/src/main/res/values-el/strings.xml
  22. +2
    -6
      app/src/main/res/values-en/strings.xml
  23. +2
    -6
      app/src/main/res/values-es-rES/strings.xml
  24. +2
    -6
      app/src/main/res/values-fi/strings.xml
  25. +9
    -13
      app/src/main/res/values-fr/strings.xml
  26. +2
    -6
      app/src/main/res/values-he/strings.xml
  27. +2
    -6
      app/src/main/res/values-hu/strings.xml
  28. +2
    -6
      app/src/main/res/values-it/strings.xml
  29. +2
    -6
      app/src/main/res/values-iw/strings.xml
  30. +2
    -6
      app/src/main/res/values-ja/strings.xml
  31. +2
    -6
      app/src/main/res/values-ko/strings.xml
  32. +2
    -6
      app/src/main/res/values-nb/strings.xml
  33. +2
    -6
      app/src/main/res/values-nl/strings.xml
  34. +2
    -6
      app/src/main/res/values-no/strings.xml
  35. +2
    -6
      app/src/main/res/values-pl/strings.xml
  36. +2
    -6
      app/src/main/res/values-pt-rBR/strings.xml
  37. +2
    -6
      app/src/main/res/values-pt-rPT/strings.xml
  38. +9
    -13
      app/src/main/res/values-ro/strings.xml
  39. +2
    -6
      app/src/main/res/values-ru/strings.xml
  40. +2
    -6
      app/src/main/res/values-sr/strings.xml
  41. +2
    -6
      app/src/main/res/values-sv-rSE/strings.xml
  42. +2
    -6
      app/src/main/res/values-tr/strings.xml
  43. +2
    -6
      app/src/main/res/values-uk/strings.xml
  44. +2
    -6
      app/src/main/res/values-vi/strings.xml
  45. +2
    -6
      app/src/main/res/values-zh-rCN/strings.xml
  46. +2
    -6
      app/src/main/res/values-zh-rTW/strings.xml
  47. +0
    -5
      app/src/main/res/values/strings.xml

BIN
.idea/caches/build_file_checksums.ser View File


+ 0
- 1
README.md View File

@ -32,7 +32,6 @@ Pro features
------------
* Preview sender/subject in new messages status bar notification
* Encrypt/decrypt messages using [OpenPGP](https://www.openpgp.org/)
* Progressive search (first local, then server)
* Standard replies


+ 0
- 3
app/build.gradle View File

@ -80,7 +80,6 @@ dependencies {
def javamail_version = "1.6.0"
def jsoup_version = "1.11.3"
def jcharset_version = "2.0"
def openpgp_version = "12.0"
implementation "androidx.appcompat:appcompat:$androidx_version"
implementation "androidx.recyclerview:recyclerview:$androidx_version"
@ -104,6 +103,4 @@ dependencies {
implementation "org.jsoup:jsoup:$jsoup_version"
implementation "net.freeutils:jcharset:$jcharset_version"
implementation "org.sufficientlysecure:openpgp-api:$openpgp_version"
}

+ 0
- 1
app/src/main/java/eu/faircode/email/ActivityCompose.java View File

@ -36,7 +36,6 @@ public class ActivityCompose extends ActivityBilling implements FragmentManager.
static final int REQUEST_CONTACT_CC = 2;
static final int REQUEST_CONTACT_BCC = 3;
static final int REQUEST_ATTACHMENT = 4;
static final int REQUEST_OPENPGP = 5;
@Override
protected void onCreate(Bundle savedInstanceState) {


+ 0
- 1
app/src/main/java/eu/faircode/email/ActivityView.java View File

@ -82,7 +82,6 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
static final int REQUEST_UNSEEN = 2;
static final int REQUEST_ATTACHMENT = 1;
static final int REQUEST_OPENPGP = 2;
static final String ACTION_VIEW_MESSAGES = BuildConfig.APPLICATION_ID + ".VIEW_MESSAGES";
static final String ACTION_VIEW_MESSAGE = BuildConfig.APPLICATION_ID + ".VIEW_MESSAGE";


+ 24
- 31
app/src/main/java/eu/faircode/email/AdapterAttachment.java View File

@ -156,38 +156,31 @@ public class AdapterAttachment extends RecyclerView.Adapter<AdapterAttachment.Vi
// Build file name
File file = EntityAttachment.getFile(context, attachment.id);
if ("encrypted.asc".equals(attachment.name)) {
Intent intent = new Intent(FragmentMessage.ACTION_DECRYPT_MESSAGE);
intent.putExtra("file", file);
LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(context);
lbm.sendBroadcast(intent);
} else {
// https://developer.android.com/reference/android/support/v4/content/FileProvider
Uri uri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID, file);
Log.i(Helper.TAG, "uri=" + uri);
// Build intent
final Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, attachment.type);
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
Log.i(Helper.TAG, "Sharing " + file + " type=" + attachment.type);
Log.i(Helper.TAG, "Intent=" + intent);
// Set permissions
List<ResolveInfo> targets = context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
for (ResolveInfo resolveInfo : targets) {
Log.i(Helper.TAG, "Target=" + resolveInfo);
context.grantUriPermission(resolveInfo.activityInfo.packageName, uri, Intent.FLAG_GRANT_READ_URI_PERMISSION);
}
// Check if viewer available
if (targets.size() == 0) {
Toast.makeText(context, context.getString(R.string.title_no_viewer, attachment.type), Toast.LENGTH_LONG).show();
return;
}
context.startActivity(intent);
// https://developer.android.com/reference/android/support/v4/content/FileProvider
Uri uri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID, file);
Log.i(Helper.TAG, "uri=" + uri);
// Build intent
final Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(uri, attachment.type);
intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
Log.i(Helper.TAG, "Sharing " + file + " type=" + attachment.type);
Log.i(Helper.TAG, "Intent=" + intent);
// Set permissions
List<ResolveInfo> targets = context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
for (ResolveInfo resolveInfo : targets) {
Log.i(Helper.TAG, "Target=" + resolveInfo);
context.grantUriPermission(resolveInfo.activityInfo.packageName, uri, Intent.FLAG_GRANT_READ_URI_PERMISSION);
}
// Check if viewer available
if (targets.size() == 0) {
Toast.makeText(context, context.getString(R.string.title_no_viewer, attachment.type), Toast.LENGTH_LONG).show();
return;
}
context.startActivity(intent);
} else {
if (attachment.progress == null) {
Bundle args = new Bundle();


+ 6
- 169
app/src/main/java/eu/faircode/email/FragmentCompose.java View File

@ -20,16 +20,13 @@ package eu.faircode.email;
*/
import android.Manifest;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.content.IntentSender;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.preference.PreferenceManager;
import android.provider.ContactsContract;
import android.provider.OpenableColumns;
import android.text.Html;
@ -57,19 +54,12 @@ import android.widget.Toast;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import com.google.android.material.snackbar.Snackbar;
import org.openintents.openpgp.OpenPgpError;
import org.openintents.openpgp.util.OpenPgpApi;
import org.openintents.openpgp.util.OpenPgpServiceConnection;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.charset.Charset;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@ -77,17 +67,10 @@ import java.util.Comparator;
import java.util.Date;
import java.util.List;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.activation.FileTypeMap;
import javax.mail.Address;
import javax.mail.BodyPart;
import javax.mail.MessageRemovedException;
import javax.mail.Multipart;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMultipart;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@ -128,25 +111,6 @@ public class FragmentCompose extends FragmentEx {
private boolean addresses;
private boolean autosave = true;
private OpenPgpServiceConnection openPgpConnection = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
openPgpConnection = new OpenPgpServiceConnection(getContext(), "org.sufficientlysecure.keychain");
openPgpConnection.bindToService();
}
@Override
public void onDestroy() {
if (openPgpConnection != null) {
openPgpConnection.unbindFromService();
openPgpConnection = null;
}
super.onDestroy();
}
@Override
@Nullable
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
@ -447,9 +411,6 @@ public class FragmentCompose extends FragmentEx {
if (requestCode == ActivityCompose.REQUEST_ATTACHMENT) {
if (data != null)
handleAddAttachment(data);
} else if (requestCode == ActivityCompose.REQUEST_OPENPGP) {
Log.i(Helper.TAG, "User interacted");
onAction(R.id.action_encrypt);
} else {
if (data != null)
handlePickContact(requestCode, data);
@ -530,15 +491,6 @@ public class FragmentCompose extends FragmentEx {
}
private void onAction(int action) {
if (action == R.id.action_encrypt) {
if (!PreferenceManager.getDefaultSharedPreferences(getContext()).getBoolean("pro", false)) {
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.content_frame, new FragmentPro()).addToBackStack("pro");
fragmentTransaction.commit();
return;
}
}
Helper.setViewsEnabled(view, false);
getActivity().invalidateOptionsMenu();
@ -1012,7 +964,7 @@ public class FragmentCompose extends FragmentEx {
EntityOperation.queue(db, draft, EntityOperation.ADD);
} else if (action == R.id.action_send || action == R.id.action_encrypt) {
} else if (action == R.id.action_send) {
db.message().updateMessage(draft);
draft.write(context, pbody);
@ -1023,108 +975,6 @@ public class FragmentCompose extends FragmentEx {
if (draft.to == null && draft.cc == null && draft.bcc == null)
throw new IllegalArgumentException(context.getString(R.string.title_to_missing));
if (action == R.id.action_encrypt) {
if (openPgpConnection == null || !openPgpConnection.isBound())
throw new IllegalArgumentException(getString(R.string.title_no_openpgp));
List<String> tos = new ArrayList<>();
for (InternetAddress ia : ato)
tos.add(ia.getAddress());
Intent data = new Intent();
data.setAction(OpenPgpApi.ACTION_ENCRYPT);
data.putExtra(OpenPgpApi.EXTRA_USER_IDS, tos.toArray(new String[0]));
data.putExtra(OpenPgpApi.EXTRA_REQUEST_ASCII_ARMOR, true);
Multipart multipart = new MimeMultipart();
BodyPart bpMessage = new MimeBodyPart();
bpMessage.setContent(pbody, "text/html; charset=" + Charset.defaultCharset().name());
multipart.addBodyPart(bpMessage);
List<EntityAttachment> attachments = db.attachment().getAttachments(id);
for (final EntityAttachment attachment : attachments)
if (attachment.available) {
BodyPart bpAttachment = new MimeBodyPart();
bpAttachment.setFileName(attachment.name);
File file = EntityAttachment.getFile(context, attachment.id);
FileDataSource dataSource = new FileDataSource(file);
dataSource.setFileTypeMap(new FileTypeMap() {
@Override
public String getContentType(File file) {
return attachment.type;
}
@Override
public String getContentType(String filename) {
return attachment.type;
}
});
bpAttachment.setDataHandler(new DataHandler(dataSource));
multipart.addBodyPart(bpAttachment);
} else
throw new IllegalArgumentException(context.getString(R.string.title_attachments_missing));
ByteArrayOutputStream bos = new ByteArrayOutputStream();
multipart.writeTo(bos);
ByteArrayInputStream is = new ByteArrayInputStream(bos.toByteArray());
ByteArrayOutputStream os = new ByteArrayOutputStream();
OpenPgpApi api = new OpenPgpApi(context, openPgpConnection.getService());
Intent result = api.executeApi(data, is, os);
int code = result.getIntExtra(OpenPgpApi.RESULT_CODE, OpenPgpApi.RESULT_CODE_ERROR);
switch (code) {
case OpenPgpApi.RESULT_CODE_SUCCESS: {
Log.i(Helper.TAG, "PGP encrypted");
for (EntityAttachment attachment : attachments)
db.attachment().deleteAttachment(attachment.id);
EntityAttachment attachment = new EntityAttachment();
attachment.message = id;
attachment.sequence = 1;
attachment.name = "encrypted.asc";
attachment.type = "application/octet-stream";
attachment.size = os.size();
attachment.progress = 0;
attachment.id = db.attachment().insertAttachment(attachment);
File file = attachment.getFile(context, attachment.id);
BufferedOutputStream out = null;
try {
out = new BufferedOutputStream(new FileOutputStream(file));
os.writeTo(out);
} finally {
if (out != null)
try {
out.close();
} catch (IOException e) {
Log.e(Helper.TAG, e + "\n" + Log.getStackTraceString(e));
}
}
attachment.progress = null;
attachment.available = true;
db.attachment().updateAttachment(attachment);
break;
}
case OpenPgpApi.RESULT_CODE_USER_INTERACTION_REQUIRED: {
Log.i(Helper.TAG, "PGP user interaction");
PendingIntent pi = result.getParcelableExtra(OpenPgpApi.RESULT_INTENT);
args.putParcelable("pi", pi);
return null;
}
case OpenPgpApi.RESULT_CODE_ERROR: {
OpenPgpError error = result.getParcelableExtra(OpenPgpApi.RESULT_ERROR);
throw new IllegalArgumentException(error.getMessage());
}
}
}
// Save message ID
String msgid = draft.msgid;
@ -1148,7 +998,7 @@ public class FragmentCompose extends FragmentEx {
draft.ui_hide = false;
draft.ui_found = false;
draft.id = db.message().insertMessage(draft);
draft.write(getContext(), action == R.id.action_encrypt ? "" : pbody);
draft.write(getContext(), pbody);
// Restore attachments
for (EntityAttachment attachment : attachments) {
@ -1189,23 +1039,10 @@ public class FragmentCompose extends FragmentEx {
if (draft != null)
Toast.makeText(getContext(), R.string.title_draft_saved, Toast.LENGTH_LONG).show();
} else if (action == R.id.action_send || action == R.id.action_encrypt) {
if (draft == null) {
PendingIntent pi = args.getParcelable("pi");
try {
startIntentSenderForResult(
pi.getIntentSender(),
ActivityCompose.REQUEST_OPENPGP,
null, 0, 0, 0,
new Bundle());
} catch (IntentSender.SendIntentException ex) {
Toast.makeText(getContext(), ex.toString(), Toast.LENGTH_LONG).show();
}
} else {
autosave = false;
getFragmentManager().popBackStack();
Toast.makeText(getContext(), R.string.title_queued, Toast.LENGTH_LONG).show();
}
} else if (action == R.id.action_send) {
autosave = false;
getFragmentManager().popBackStack();
Toast.makeText(getContext(), R.string.title_queued, Toast.LENGTH_LONG).show();
}
}


+ 0
- 254
app/src/main/java/eu/faircode/email/FragmentMessage.java View File

@ -19,12 +19,9 @@ package eu.faircode.email;
Copyright 2018 by Marcel Bokhorst (M66B)
*/
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
@ -59,24 +56,14 @@ import android.widget.Toast;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.snackbar.Snackbar;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.openintents.openpgp.OpenPgpError;
import org.openintents.openpgp.util.OpenPgpApi;
import org.openintents.openpgp.util.OpenPgpServiceConnection;
import org.xml.sax.XMLReader;
import java.io.BufferedOutputStream;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.text.Collator;
import java.text.DateFormat;
@ -87,12 +74,6 @@ import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.InternetHeaders;
import javax.mail.internet.MimeBodyPart;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@ -107,8 +88,6 @@ import androidx.localbroadcastmanager.content.LocalBroadcastManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import static android.app.Activity.RESULT_OK;
public class FragmentMessage extends FragmentEx {
private ViewGroup view;
private View vwAnswerAnchor;
@ -145,15 +124,10 @@ public class FragmentMessage extends FragmentEx {
private boolean headers = false;
private AdapterAttachment adapter;
private OpenPgpServiceConnection openPgpConnection = null;
private boolean debug;
private DateFormat df = SimpleDateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
private ExecutorService executor = Executors.newCachedThreadPool(Helper.backgroundThreadFactory);
private static final long CACHE_IMAGE_DURATION = 3 * 24 * 3600 * 1000L;
static final String ACTION_DECRYPT_MESSAGE = BuildConfig.APPLICATION_ID + ".DECRYPT_MESSAGE";
@Override
public void onCreate(Bundle savedInstanceState) {
@ -163,33 +137,6 @@ public class FragmentMessage extends FragmentEx {
message = (TupleMessageEx) getArguments().getSerializable("message");
else
message = (TupleMessageEx) savedInstanceState.getSerializable("message");
openPgpConnection = new OpenPgpServiceConnection(getContext(), "org.sufficientlysecure.keychain");
openPgpConnection.bindToService();
}
@Override
public void onResume() {
super.onResume();
LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(getContext());
IntentFilter iff = new IntentFilter(ACTION_DECRYPT_MESSAGE);
lbm.registerReceiver(receiver, iff);
}
@Override
public void onPause() {
super.onPause();
LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(getContext());
lbm.unregisterReceiver(receiver);
}
@Override
public void onDestroy() {
if (openPgpConnection != null) {
openPgpConnection.unbindFromService();
openPgpConnection = null;
}
super.onDestroy();
}
@Override
@ -575,7 +522,6 @@ public class FragmentMessage extends FragmentEx {
menu.findItem(R.id.menu_show_headers).setEnabled(message.uid != null);
menu.findItem(R.id.menu_show_headers).setVisible(!free);
menu.findItem(R.id.menu_reply_all).setVisible(!inOutbox);
menu.findItem(R.id.menu_decrypt).setVisible(!inOutbox);
}
@Override
@ -602,9 +548,6 @@ public class FragmentMessage extends FragmentEx {
case R.id.menu_answer:
onMenuAnswer();
return true;
case R.id.menu_decrypt:
onMenuDecrypt();
return true;
default:
return super.onOptionsItemSelected(item);
}
@ -731,45 +674,6 @@ public class FragmentMessage extends FragmentEx {
});
}
private void onMenuDecrypt() {
try {
// Find encrypted message
String begin = "-----BEGIN PGP MESSAGE-----";
String end = "-----END PGP MESSAGE-----";
Document document = Jsoup.parse(message.read(getContext()));
String encrypted = document.text();
int efrom = encrypted.indexOf(begin) + begin.length();
int eto = encrypted.indexOf(end);
if (efrom < 0 || eto < 0)
throw new IllegalArgumentException(getString(R.string.title_not_encrypted));
encrypted = begin + "\n" + encrypted.substring(efrom, eto).replace(" ", "\n") + end + "\n";
InputStream is = new ByteArrayInputStream(encrypted.getBytes("UTF-8"));
decrypt(is, false);
} catch (Throwable ex) {
Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex));
if (ex instanceof IllegalArgumentException)
Snackbar.make(view, ex.getMessage(), Snackbar.LENGTH_LONG).show();
else
Toast.makeText(getContext(), ex.toString(), Toast.LENGTH_LONG).show();
}
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.i(Helper.TAG, "Message onActivityResult request=" + requestCode + " result=" + resultCode + " data=" + data);
if (resultCode == RESULT_OK) {
if (requestCode == ActivityView.REQUEST_OPENPGP) {
Log.i(Helper.TAG, "User interacted");
onMenuDecrypt();
}
}
}
private void onActionSpam() {
AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
builder
@ -1210,162 +1114,4 @@ public class FragmentMessage extends FragmentEx {
return result;
}
private void decrypt(InputStream is, final boolean isPart) {
Log.i(Helper.TAG, "On decrypt");
if (!PreferenceManager.getDefaultSharedPreferences(getContext()).getBoolean("pro", false)) {
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.content_frame, new FragmentPro()).addToBackStack("pro");
fragmentTransaction.commit();
return;
}
if (openPgpConnection == null || !openPgpConnection.isBound())
throw new IllegalArgumentException(getString(R.string.title_no_openpgp));
if (message.to == null || message.to.length == 0)
throw new IllegalArgumentException(getString(R.string.title_to_missing));
final ByteArrayOutputStream os = new ByteArrayOutputStream();
InternetAddress to = (InternetAddress) message.to[0];
Intent data = new Intent();
data.setAction(OpenPgpApi.ACTION_DECRYPT_VERIFY);
data.putExtra(OpenPgpApi.EXTRA_USER_IDS, new String[]{to.getAddress()});
OpenPgpApi api = new OpenPgpApi(getContext(), openPgpConnection.getService());
api.executeApiAsync(data, is, os, new OpenPgpApi.IOpenPgpCallback() {
@Override
public void onReturn(Intent result) {
try {
int code = result.getIntExtra(OpenPgpApi.RESULT_CODE, OpenPgpApi.RESULT_CODE_ERROR);
switch (code) {
case OpenPgpApi.RESULT_CODE_SUCCESS: {
Log.i(Helper.TAG, "Decrypted");
String decrypted = os.toString("UTF-8");
if (isPart) {
InternetHeaders ih = new InternetHeaders();
ih.addHeader("Content-Type", "multipart/alternative");
final MimeBodyPart part = new MimeBodyPart(ih, decrypted.getBytes());
String dbody = MessageHelper.getHtml(part);
message.write(getContext(), dbody);
// Store attachments
executor.submit(new Runnable() {
@Override
public void run() {
DB db = DB.getInstance(getContext());
try {
db.beginTransaction();
for (EntityAttachment attachment : db.attachment().getAttachments(message.id))
if ("encrypted.asc".equals(attachment.name))
db.attachment().deleteAttachment(attachment.id);
int sequence = 0;
for (EntityAttachment attachment : MessageHelper.getAttachments(part)) {
attachment.message = message.id;
attachment.sequence = ++sequence;
attachment.id = db.attachment().insertAttachment(attachment);
File file = EntityAttachment.getFile(getContext(), attachment.id);
// Store attachment
InputStream is = null;
OutputStream os = null;
try {
is = attachment.part.getInputStream();
os = new BufferedOutputStream(new FileOutputStream(file));
int size = 0;
byte[] buffer = new byte[Helper.ATTACHMENT_BUFFER_SIZE];
for (int len = is.read(buffer); len != -1; len = is.read(buffer)) {
size += len;
os.write(buffer, 0, len);
}
// Store attachment data
attachment.size = size;
attachment.progress = null;
attachment.available = true;
db.attachment().updateAttachment(attachment);
} finally {
try {
if (is != null)
is.close();
} finally {
if (os != null)
os.close();
}
}
}
db.setTransactionSuccessful();
} catch (Throwable ex) {
Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex));
} finally {
db.endTransaction();
}
}
});
} else
message.write(getContext(), "<pre>" + decrypted.replaceAll("\\r?\\n", "<br />") + "</pre>");
Bundle args = new Bundle();
args.putLong("id", message.id);
args.putBoolean("show_images", false);
pbBody.setVisibility(View.VISIBLE);
bodyTask.load(FragmentMessage.this, args);
break;
}
case OpenPgpApi.RESULT_CODE_USER_INTERACTION_REQUIRED: {
Log.i(Helper.TAG, "User interaction");
PendingIntent pi = result.getParcelableExtra(OpenPgpApi.RESULT_INTENT);
startIntentSenderForResult(
pi.getIntentSender(),
ActivityView.REQUEST_OPENPGP,
null, 0, 0, 0,
new Bundle());
break;
}
case OpenPgpApi.RESULT_CODE_ERROR: {
OpenPgpError error = result.getParcelableExtra(OpenPgpApi.RESULT_ERROR);
throw new IllegalArgumentException(error.getMessage());
}
}
} catch (Throwable ex) {
Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex));
if (ex instanceof IllegalArgumentException)
Snackbar.make(view, ex.getMessage(), Snackbar.LENGTH_LONG).show();
else
Toast.makeText(getContext(), ex.toString(), Toast.LENGTH_LONG).show();
}
}
});
}
BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
new SimpleTask<InputStream>() {
@Override
protected InputStream onLoad(Context context, Bundle args) throws Throwable {
File file = (File) args.getSerializable("file");
FileInputStream fis = new FileInputStream(file);
return fis;
}
@Override
protected void onLoaded(Bundle args, InputStream data) {
decrypt(data, true);
}
}.load(FragmentMessage.this, intent.getExtras());
}
};
}

+ 0
- 6
app/src/main/res/menu/action_compose.xml View File

@ -14,12 +14,6 @@
android:title="@string/title_save"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_encrypt"
android:icon="@drawable/baseline_send_24"
android:title="@string/title_encrypt"
app:showAsAction="ifRoom" />
<item
android:id="@+id/action_send"
android:icon="@drawable/baseline_send_24"


+ 0
- 5
app/src/main/res/menu/menu_view.xml View File

@ -44,9 +44,4 @@
android:icon="@drawable/baseline_reply_24"
android:title="@string/title_answer_reply"
app:showAsAction="never" />
<item
android:id="@+id/menu_decrypt"
android:title="@string/title_decrypt"
app:showAsAction="never" />
</menu>

+ 2
- 6
app/src/main/res/values-af/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ar-rBH/strings.xml View File

@ -94,9 +94,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -163,10 +163,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ar-rEG/strings.xml View File

@ -94,9 +94,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -163,10 +163,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ar-rSA/strings.xml View File

@ -94,9 +94,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -163,10 +163,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ar-rYE/strings.xml View File

@ -94,9 +94,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -163,10 +163,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ar/strings.xml View File

@ -94,9 +94,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -163,10 +163,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ca/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-cs/strings.xml View File

@ -86,9 +86,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -155,10 +155,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-da/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">Brugernavn</string>
<string name="title_password">Adgangskode</string>
<string name="title_authorize">Vælg konto</string>
<string name="title_instructions">Vejledning</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Gem sendte beskeder (aktivér kun hvis nødvendigt)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synkronisér (modtag meddelelser)</string>
<string name="title_synchronize_identity">Synkronisér (send meddelelser)</string>
<string name="title_primary_account">Primær (standard konto)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Vis CC/BCC</string>
<string name="title_add_attachment">Vedhæft fil</string>
<string name="title_no_openpgp">OpenPGP ikke tilgængelig</string>
<string name="title_not_encrypted">Krypteret meddelelse ikke fundet</string>
<string name="title_encrypt">Kryptér</string>
<string name="title_decrypt">Dekryptér</string>
<string name="title_from_missing">Afsender mangler</string>
<string name="title_to_missing">Modtager mangler</string>
<string name="title_attachments_missing">Vedhæftede filer indlæses stadig</string>


+ 15
- 19
app/src/main/res/values-de/strings.xml View File

@ -45,10 +45,10 @@
<string name="title_setup_account_remark">Um E-Mails zu empfangen</string>
<string name="title_setup_identity">Identitäten verwalten</string>
<string name="title_setup_identity_remark">Um E-Mails zu senden</string>
<string name="title_setup_doze">Disable battery optimizations</string>
<string name="title_setup_doze_remark">To continuously receive email (optional)</string>
<string name="title_setup_doze_instructions">In the next dialog, select \"All apps\" at the top, select this app and select and confirm \"Don\'t optimize\"</string>
<string name="title_setup_data">Disable data saving</string>
<string name="title_setup_doze">Deaktiviere Akku-Optimierung</string>
<string name="title_setup_doze_remark">Um kontinuierlich E-Mails zu empfangen (optional)</string>
<string name="title_setup_doze_instructions">Rufen Sie im folgendem Auswahldialog (oben) \"Alle Apps\" auf; wählen Sie anschließend FairEmail aus und bestätigen Sie die Option \"Nicht optimieren\" mit Fertig.</string>
<string name="title_setup_data">Deaktivere Datenreduzierung</string>
<string name="title_setup_permissions">Berechtigungen erteilen</string>
<string name="title_setup_permissions_remark">Um Adressen zu autovervollständigen (optional)</string>
<string name="title_setup_to_do">To Do</string>
@ -57,12 +57,12 @@
<string name="title_advanced">Erweiterte Optionen</string>
<string name="title_advanced_webview">Verwende WebView, um externe Links anzuzeigen</string>
<string name="title_advanced_customtabs">Anstatt <a href="https://developer.chrome.com/multidevice/android/customtabs">Chrome benutzerdefinierte Tabs</a></string>
<string name="title_advanced_sanitize">HTML Formatierung von Nachrichten entfernen</string>
<string name="title_advanced_sanitize">HTML-Formatierung von Nachrichten entfernen</string>
<string name="title_advanced_compress_imap">IMAP Daten komprimieren</string>
<string name="title_advanced_debug">Debuggen</string>
<string name="title_select">Wählen Sie &#8230;</string>
<string name="title_identity_name">Ihr Name</string>
<string name="title_identity_email">Ihre E-Mail Adresse</string>
<string name="title_identity_email">Ihre E-Mail-Adresse</string>
<string name="title_identity_reply_to">Antwortadresse</string>
<string name="title_optional">Optional</string>
<string name="title_account_linked">Verknüpftes Konto</string>
@ -78,9 +78,9 @@
<string name="title_user">Benutzername</string>
<string name="title_password">Passwort</string>
<string name="title_authorize">Konto wählen</string>
<string name="title_instructions">Anweisungen</string>
<string name="title_authorizing">Autorisieren Konto &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Speichere gesendete Nachrichten (nur bei Bedarf aktivieren)</string>
<string name="title_interval">Keep-alive-Intervall (Minuten)</string>
<string name="title_synchronize_account">Synchronisiere (empfange E-Mails)</string>
<string name="title_synchronize_identity">Synchronisiere (sende E-Mails)</string>
<string name="title_primary_account">Primär (Standard-Konto)</string>
@ -99,7 +99,7 @@
<string name="title_account_delete">Möchten Sie dieses Konto unwiderruflich löschen?</string>
<string name="title_identity_delete">Möchten Sie diese Identität unwiderruflich löschen?</string>
<string name="title_synchronize_folder">Synchronisiere (empfange E-Mails)</string>
<string name="title_unified_folder">Show in unified inbox</string>
<string name="title_unified_folder">Im gemeinsamen Posteingang anzeigen</string>
<string name="title_after">Synchronisiere (Tage)</string>
<string name="title_folder_unified">Gemeinsamer Posteingang</string>
<string name="title_folder_inbox">Posteingang</string>
@ -123,7 +123,7 @@
<string name="title_unseen">Als ungelesen markieren</string>
<string name="title_forward">Weiterleiten</string>
<string name="title_reply_all">Antworten an alle</string>
<string name="title_show_headers">Show headers</string>
<string name="title_show_headers">Kopfzeile anzeigen</string>
<string name="title_show_html">Original anzeigen</string>
<string name="title_trash">Papierkorb</string>
<string name="title_spam">Spam</string>
@ -147,10 +147,6 @@
<string name="title_send">Senden</string>
<string name="title_show_addresses">CC/BCC anzeigen</string>
<string name="title_add_attachment">Anhang hinzufügen</string>
<string name="title_no_openpgp">OpenPGP nicht verfügbar</string>
<string name="title_not_encrypted">Verschlüsselte Nachricht nicht gefunden</string>
<string name="title_encrypt">Verschlüsseln</string>
<string name="title_decrypt">Entschlüsseln</string>
<string name="title_from_missing">Absender fehlt</string>
<string name="title_to_missing">Empfänger fehlt</string>
<string name="title_attachments_missing">Anhänge werden noch geladen</string>
@ -168,7 +164,7 @@
<string name="title_legend_thread">Unterhaltung</string>
<string name="title_legend_synchronize">Synchronisieren</string>
<string name="title_legend_primary">Primär</string>
<string name="title_legend_unified">Unified inbox</string>
<string name="title_legend_unified">Sammeleingang</string>
<string name="title_legend_disconnected">Keine Verbindung</string>
<string name="title_legend_connecting">Verbinde</string>
<string name="title_legend_connected">Verbunden</string>
@ -177,11 +173,11 @@
<string name="title_hint_actions">Nach links wischen, um in den Papierkorb zu werfen; nach rechts wischen zum archivieren (sofern verfügbar); langes drücken, um als gelesen/ungelesen zu markieren</string>
<string name="title_understood">Verstanden</string>
<string name="title_pro_feature">Dies ist eine Premium Funktion</string>
<string name="title_pro_list">Liste der Premium Funktionen</string>
<string name="title_pro_list">Liste der Pro-Funktionen</string>
<string name="title_pro_purchase">Kaufen</string>
<string name="title_pro_hint">Das Kaufen der Premium Funktionen erlaubt es Ihnen alle momentan und zukünftig verfügbaren Premium Funktionen zu nutzen und ermöglicht die Entwicklung und Pflege der App</string>
<string name="title_pro_activated">Alle Premium Funktionen sind aktiviert</string>
<string name="title_pro_valid">Alle Premium Funktionen aktiviert</string>
<string name="title_pro_hint">Der Erwerb der Pro-Funktionen erlaubt es Ihnen alle momentan und zukünftig verfügbaren Pro-Funktionen zu nutzen und ermöglicht die Weiterentwicklung und Pflege der App</string>
<string name="title_pro_activated">Alle Pro-Funktionen sind aktiviert</string>
<string name="title_pro_valid">Alle Pro-Funktionen aktiviert</string>
<string name="title_pro_invalid">Ungültige Antwort</string>
<string name="title_log">Protokoll</string>
<string name="title_debug_info">Debuginformationen</string>


+ 2
- 6
app/src/main/res/values-el/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-en/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-es-rES/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-fi/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 9
- 13
app/src/main/res/values-fr/strings.xml View File

@ -45,10 +45,10 @@
<string name="title_setup_account_remark">Recevoir des e-mails</string>
<string name="title_setup_identity">Gérer les identités</string>
<string name="title_setup_identity_remark">Envoyer des e-mails</string>
<string name="title_setup_doze">Disable battery optimizations</string>
<string name="title_setup_doze_remark">To continuously receive email (optional)</string>
<string name="title_setup_doze_instructions">In the next dialog, select \"All apps\" at the top, select this app and select and confirm \"Don\'t optimize\"</string>
<string name="title_setup_data">Disable data saving</string>
<string name="title_setup_doze">Désactiver les optimisations de la batterie</string>
<string name="title_setup_doze_remark">Pour recevoir des e-mails en continu (facultatif)</string>
<string name="title_setup_doze_instructions">Sur le prochain écran, sélectionnez \"Toutes les applis\" en haut, recherchez cette appli puis sélectionnez et validez \"Ne pas optimiser\"</string>
<string name="title_setup_data">Désactiver l\'économie de données</string>
<string name="title_setup_permissions">Accorder les autorisations</string>
<string name="title_setup_permissions_remark">Saisie semi-automatique des adresses (facultatif)</string>
<string name="title_setup_to_do">À faire</string>
@ -78,9 +78,9 @@
<string name="title_user">Nom d’utilisateur</string>
<string name="title_password">Mot de passe</string>
<string name="title_authorize">Sélectionner un compte</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Autorisation du compte en cours &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Stocker les messages envoyés (à activer si nécessaire)</string>
<string name="title_interval">Intervalle de maintien de connexion (minutes)</string>
<string name="title_synchronize_account">Synchroniser (recevoir des messages)</string>
<string name="title_synchronize_identity">Synchroniser (envoyer des messages)</string>
<string name="title_primary_account">Principal (compte par défaut)</string>
@ -99,7 +99,7 @@
<string name="title_account_delete">Supprimer définitivement ce compte ?</string>
<string name="title_identity_delete">Supprimer définitivement cette identité ?</string>
<string name="title_synchronize_folder">Synchroniser (recevoir des messages)</string>
<string name="title_unified_folder">Show in unified inbox</string>
<string name="title_unified_folder">Afficher dans la boîte de réception unifiée</string>
<string name="title_after">Synchroniser (jours)</string>
<string name="title_folder_unified">Boite de réception unifiée</string>
<string name="title_folder_inbox">Boîte de réception</string>
@ -123,7 +123,7 @@
<string name="title_unseen">Marquer comme non lu</string>
<string name="title_forward">Transférer</string>
<string name="title_reply_all">Répondre à tous</string>
<string name="title_show_headers">Show headers</string>
<string name="title_show_headers">Afficher les en-têtes</string>
<string name="title_show_html">Afficher l\'original</string>
<string name="title_trash">Corbeille</string>
<string name="title_spam">Spam</string>
@ -147,10 +147,6 @@
<string name="title_send">Envoyer</string>
<string name="title_show_addresses">Afficher Cc/Cci</string>
<string name="title_add_attachment">Ajouter une pièce jointe</string>
<string name="title_no_openpgp">OpenPGP n’est pas disponible</string>
<string name="title_not_encrypted">Message chiffré non trouvé</string>
<string name="title_encrypt">Chiffrer</string>
<string name="title_decrypt">Déchiffrer</string>
<string name="title_from_missing">Expéditeur manquant</string>
<string name="title_to_missing">Destinataire manquant</string>
<string name="title_attachments_missing">Pièces jointes en cours de chargement</string>
@ -168,7 +164,7 @@
<string name="title_legend_thread">Fil de discussion</string>
<string name="title_legend_synchronize">Synchroniser</string>
<string name="title_legend_primary">Principal</string>
<string name="title_legend_unified">Unified inbox</string>
<string name="title_legend_unified">Boite de réception unifiée</string>
<string name="title_legend_disconnected">Déconnecté</string>
<string name="title_legend_connecting">Connexion en cours</string>
<string name="title_legend_connected">Connecté</string>


+ 2
- 6
app/src/main/res/values-he/strings.xml View File

@ -86,9 +86,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -155,10 +155,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-hu/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-it/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">Nome utente</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Conserva i messaggi inviati (abilita solo se necessario)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Sincronizza (ricevi messaggi)</string>
<string name="title_synchronize_identity">Sincronizza (invia messaggi)</string>
<string name="title_primary_account">Principale (account predefinito)</string>
@ -147,10 +147,6 @@
<string name="title_send">Invia</string>
<string name="title_show_addresses">Mostra CC/BCC</string>
<string name="title_add_attachment">Aggiungi allegato</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Mittente mancante</string>
<string name="title_to_missing">Destinatario mancante</string>
<string name="title_attachments_missing">Allegati ancora in fase di caricamento</string>


+ 2
- 6
app/src/main/res/values-iw/strings.xml View File

@ -86,9 +86,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -155,10 +155,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ja/strings.xml View File

@ -74,9 +74,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -143,10 +143,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-ko/strings.xml View File

@ -74,9 +74,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -143,10 +143,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-nb/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-nl/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-no/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-pl/strings.xml View File

@ -86,9 +86,9 @@
<string name="title_user">Nazwa użytkownika</string>
<string name="title_password">Hasło</string>
<string name="title_authorize">Wybierz konto</string>
<string name="title_instructions">Instrukcje</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Zachowuj wysłane wiadomości (włącz tylko gdy potrzebne)</string>
<string name="title_interval">Interwał utrzymywania aktywności (minuty)</string>
<string name="title_synchronize_account">Synchronizuj (odbierz wiadomości)</string>
<string name="title_synchronize_identity">Synchronizuj (wyślij wiadomości)</string>
<string name="title_primary_account">Podstawowe (domyślne konto)</string>
@ -155,10 +155,6 @@
<string name="title_send">Wyślij</string>
<string name="title_show_addresses">Pokaż DW/UDW</string>
<string name="title_add_attachment">Dodaj załącznik</string>
<string name="title_no_openpgp">OpenPGP nie dostępne</string>
<string name="title_not_encrypted">Nie znaleziono zaszyfrowanej wiadomości</string>
<string name="title_encrypt">Zaszyfruj</string>
<string name="title_decrypt">Odszyfruj</string>
<string name="title_from_missing">Brak nadawcy</string>
<string name="title_to_missing">Brak adresata</string>
<string name="title_attachments_missing">Załączniki są wciąż ładowane</string>


+ 2
- 6
app/src/main/res/values-pt-rBR/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">Nome de usuário</string>
<string name="title_password">Senha</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Sincronizar (receber mensagens)</string>
<string name="title_synchronize_identity">Sincronizar (enviar mensagens)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Enviar</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Remetente faltante</string>
<string name="title_to_missing">Destinatário faltante</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-pt-rPT/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 9
- 13
app/src/main/res/values-ro/strings.xml View File

@ -49,10 +49,10 @@
<string name="title_setup_account_remark">Pentru a primi e-mail</string>
<string name="title_setup_identity">Gestionarea identităţilor</string>
<string name="title_setup_identity_remark">Pentru a trimite e-mail</string>
<string name="title_setup_doze">Disable battery optimizations</string>
<string name="title_setup_doze_remark">To continuously receive email (optional)</string>
<string name="title_setup_doze_instructions">In the next dialog, select \"All apps\" at the top, select this app and select and confirm \"Don\'t optimize\"</string>
<string name="title_setup_data">Disable data saving</string>
<string name="title_setup_doze">Dezactivează optimizarea bateriei</string>
<string name="title_setup_doze_remark">Pentru a primi în mod continuu e-mail (opțional)</string>
<string name="title_setup_doze_instructions">În fereastra următoare, selectați \"Toate aplicațiile\" din partea de sus, selectați acestă aplicație și selectați și confirmați \"Nu optimiza\"</string>
<string name="title_setup_data">Dezactivează salvarea datelor</string>
<string name="title_setup_permissions">Acordă permisiuni</string>
<string name="title_setup_permissions_remark">Pentru completarea automată a adreselor (opţional)</string>
<string name="title_setup_to_do">De făcut</string>
@ -82,9 +82,9 @@
<string name="title_user">Nume utilizator</string>
<string name="title_password">Parolă</string>
<string name="title_authorize">Selectare cont</string>
<string name="title_instructions">Instrucțiuni</string>
<string name="title_authorizing">Autorizare cont &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Stochează mesajele trimise (activați doar la nevoie)</string>
<string name="title_interval">Interval menținere conexiune (minute)</string>
<string name="title_synchronize_account">Sincronizare (primire mesaje)</string>
<string name="title_synchronize_identity">Sincronizare (trimitere mesaje)</string>
<string name="title_primary_account">Primară (identitatea implicită)</string>
@ -103,7 +103,7 @@
<string name="title_account_delete">Ștergeți definitiv acest cont?</string>
<string name="title_identity_delete">Ștergeți definitiv această identitate?</string>
<string name="title_synchronize_folder">Sincronizare (primire mesaje)</string>
<string name="title_unified_folder">Show in unified inbox</string>
<string name="title_unified_folder">Arată în căsuța poștală comună</string>
<string name="title_after">Sincronizare (zile)</string>
<string name="title_folder_unified">Căsuță poștală comună</string>
<string name="title_folder_inbox">Mesaje primite</string>
@ -127,7 +127,7 @@
<string name="title_unseen">Marcare ca necitit</string>
<string name="title_forward">Redirecționează</string>
<string name="title_reply_all">Răspunde tuturor</string>
<string name="title_show_headers">Show headers</string>
<string name="title_show_headers">Arată antetul</string>
<string name="title_show_html">Arată original</string>
<string name="title_trash">Gunoi</string>
<string name="title_spam">Spam</string>
@ -151,10 +151,6 @@
<string name="title_send">Trimite</string>
<string name="title_show_addresses">Arată CC/BCC</string>
<string name="title_add_attachment">Adaugă ataşament</string>
<string name="title_no_openpgp">OpenPGP nu este disponibil</string>
<string name="title_not_encrypted">Mesajul criptat nu a fost găsit</string>
<string name="title_encrypt">Criptare</string>
<string name="title_decrypt">Decriptare</string>
<string name="title_from_missing">Expeditor lipsă</string>
<string name="title_to_missing">Destinatar lipsă</string>
<string name="title_attachments_missing">Atașamentele încă se încarcă</string>
@ -172,7 +168,7 @@
<string name="title_legend_thread">Conversație</string>
<string name="title_legend_synchronize">Sincronizare</string>
<string name="title_legend_primary">Primar</string>
<string name="title_legend_unified">Unified inbox</string>
<string name="title_legend_unified">Căsuță poștală comună</string>
<string name="title_legend_disconnected">Deconectat</string>
<string name="title_legend_connecting">Conectare</string>
<string name="title_legend_connected">Conectat</string>


+ 2
- 6
app/src/main/res/values-ru/strings.xml View File

@ -86,9 +86,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -155,10 +155,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-sr/strings.xml View File

@ -82,9 +82,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -151,10 +151,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-sv-rSE/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -147,10 +147,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-tr/strings.xml View File

@ -78,9 +78,9 @@
<string name="title_user">Kullanıcı adı</string>
<string name="title_password">Şifre</string>
<string name="title_authorize">Hesap seç</string>
<string name="title_instructions">Talimatlar</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Gönderilen iletileri kaydet (yalnızca gerekliyse etkinleştir)</string>
<string name="title_interval">Canlı tutma aralığı (dakika)</string>
<string name="title_synchronize_account">Senkronize et (iletileri al)</string>
<string name="title_synchronize_identity">Senkronize et (iletileri gönder)</string>
<string name="title_primary_account">Birincil (varsayılan hesap)</string>
@ -147,10 +147,6 @@
<string name="title_send">Gönder</string>
<string name="title_show_addresses">CC/BCC göster</string>
<string name="title_add_attachment">Ek ekle</string>
<string name="title_no_openpgp">OpenPGP mevcut değil</string>
<string name="title_not_encrypted">Şifreli ileti bulunamadı</string>
<string name="title_encrypt">Şifrele</string>
<string name="title_decrypt">Şifre çöz</string>
<string name="title_from_missing">Gönderici Eksik</string>
<string name="title_to_missing">Alıcı eksik</string>
<string name="title_attachments_missing">Ekler hala yükleniyor</string>


+ 2
- 6
app/src/main/res/values-uk/strings.xml View File

@ -86,9 +86,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -155,10 +155,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-vi/strings.xml View File

@ -74,9 +74,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -143,10 +143,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 2
- 6
app/src/main/res/values-zh-rCN/strings.xml View File

@ -74,9 +74,9 @@
<string name="title_user">用户名</string>
<string name="title_password">密码</string>
<string name="title_authorize">选择账户</string>
<string name="title_instructions">说明</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">存储已发送的邮件(请只在需要时启用)</string>
<string name="title_interval">间隔(分钟)</string>
<string name="title_synchronize_account">同步(接收)</string>
<string name="title_synchronize_identity">同步(发送)</string>
<string name="title_primary_account">默认账户</string>
@ -143,10 +143,6 @@
<string name="title_send">发送</string>
<string name="title_show_addresses">显示抄送和密送</string>
<string name="title_add_attachment">添加附件</string>
<string name="title_no_openpgp">OpenPGP 不可用</string>
<string name="title_not_encrypted">未找到加密邮件</string>
<string name="title_encrypt">加密</string>
<string name="title_decrypt">解密</string>
<string name="title_from_missing">缺少发件人</string>
<string name="title_to_missing">缺少收件人</string>
<string name="title_attachments_missing">附件加载中</string>


+ 2
- 6
app/src/main/res/values-zh-rTW/strings.xml View File

@ -74,9 +74,9 @@
<string name="title_user">User name</string>
<string name="title_password">Password</string>
<string name="title_authorize">Select account</string>
<string name="title_instructions">Instructions</string>
<string name="title_authorizing">Authorizing account &#8230;</string>
<string name="title_setup_advanced">Advanced</string>
<string name="title_store_sent">Store sent messages (enable if needed only)</string>
<string name="title_interval">Keep-alive interval (minutes)</string>
<string name="title_synchronize_account">Synchronize (receive messages)</string>
<string name="title_synchronize_identity">Synchronize (send messages)</string>
<string name="title_primary_account">Primary (default account)</string>
@ -143,10 +143,6 @@
<string name="title_send">Send</string>
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


+ 0
- 5
app/src/main/res/values/strings.xml View File

@ -173,11 +173,6 @@
<string name="title_show_addresses">Show CC/BCC</string>
<string name="title_add_attachment">Add attachment</string>
<string name="title_no_openpgp">OpenPGP not available</string>
<string name="title_not_encrypted">Encrypted message not found</string>
<string name="title_encrypt">Encrypt</string>
<string name="title_decrypt">Decrypt</string>
<string name="title_from_missing">Sender missing</string>
<string name="title_to_missing">Recipient missing</string>
<string name="title_attachments_missing">Attachments still loading</string>


Loading…
Cancel
Save