From e9b7458a70ebd3af4365ab8cc8b715e2a655f144 Mon Sep 17 00:00:00 2001 From: M66B Date: Thu, 23 Aug 2018 06:33:27 +0000 Subject: [PATCH] Added option to save attachments --- .../java/eu/faircode/email/ActivityView.java | 78 +++++++++++++++++++ .../eu/faircode/email/AdapterAttachment.java | 20 ++++- .../java/eu/faircode/email/DaoAttachment.java | 15 +++- app/src/main/res/layout/item_attachment.xml | 12 ++- app/src/main/res/values-af/strings.xml | 3 +- app/src/main/res/values-ar-rBH/strings.xml | 3 +- app/src/main/res/values-ar-rEG/strings.xml | 3 +- app/src/main/res/values-ar-rSA/strings.xml | 3 +- app/src/main/res/values-ar-rYE/strings.xml | 3 +- app/src/main/res/values-ar/strings.xml | 3 +- app/src/main/res/values-ca/strings.xml | 3 +- app/src/main/res/values-cs/strings.xml | 3 +- app/src/main/res/values-da/strings.xml | 3 +- app/src/main/res/values-de/strings.xml | 3 +- app/src/main/res/values-el/strings.xml | 3 +- app/src/main/res/values-en/strings.xml | 3 +- app/src/main/res/values-es-rES/strings.xml | 3 +- app/src/main/res/values-fi/strings.xml | 3 +- app/src/main/res/values-fr/strings.xml | 3 +- app/src/main/res/values-he/strings.xml | 3 +- app/src/main/res/values-hu/strings.xml | 3 +- app/src/main/res/values-it/strings.xml | 3 +- app/src/main/res/values-iw/strings.xml | 3 +- app/src/main/res/values-ja/strings.xml | 3 +- app/src/main/res/values-ko/strings.xml | 3 +- app/src/main/res/values-nb/strings.xml | 3 +- app/src/main/res/values-nl/strings.xml | 3 +- app/src/main/res/values-no/strings.xml | 3 +- app/src/main/res/values-pl/strings.xml | 3 +- app/src/main/res/values-pt-rBR/strings.xml | 3 +- app/src/main/res/values-pt-rPT/strings.xml | 3 +- app/src/main/res/values-ro/strings.xml | 3 +- app/src/main/res/values-ru/strings.xml | 3 +- app/src/main/res/values-sr/strings.xml | 3 +- app/src/main/res/values-sv-rSE/strings.xml | 3 +- app/src/main/res/values-tr/strings.xml | 3 +- app/src/main/res/values-uk/strings.xml | 3 +- app/src/main/res/values-vi/strings.xml | 3 +- app/src/main/res/values-zh-rCN/strings.xml | 3 +- app/src/main/res/values-zh-rTW/strings.xml | 3 +- app/src/main/res/values/strings.xml | 3 +- 41 files changed, 190 insertions(+), 46 deletions(-) diff --git a/app/src/main/java/eu/faircode/email/ActivityView.java b/app/src/main/java/eu/faircode/email/ActivityView.java index e17a58bd..9adfb440 100644 --- a/app/src/main/java/eu/faircode/email/ActivityView.java +++ b/app/src/main/java/eu/faircode/email/ActivityView.java @@ -19,6 +19,7 @@ package eu.faircode.email; Copyright 2018 by Marcel Bokhorst (M66B) */ +import android.app.Activity; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; @@ -27,6 +28,7 @@ import android.content.res.Configuration; import android.net.Uri; import android.os.Build; import android.os.Bundle; +import android.os.ParcelFileDescriptor; import android.preference.PreferenceManager; import android.util.Log; import android.view.LayoutInflater; @@ -42,6 +44,8 @@ import android.widget.Toast; import java.io.BufferedReader; import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; import java.io.FileReader; import java.text.Collator; import java.util.ArrayList; @@ -76,6 +80,7 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack static final String ACTION_VIEW_MESSAGES = BuildConfig.APPLICATION_ID + ".VIEW_MESSAGES"; static final String ACTION_VIEW_MESSAGE = BuildConfig.APPLICATION_ID + ".VIEW_MESSAGE"; static final String ACTION_EDIT_FOLDER = BuildConfig.APPLICATION_ID + ".EDIT_FOLDER"; + static final String ACTION_STORE_ATTACHMENT = BuildConfig.APPLICATION_ID + ".STORE_ATTACHMENT"; @Override protected void onCreate(Bundle savedInstanceState) { @@ -310,6 +315,7 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack iff.addAction(ACTION_VIEW_MESSAGES); iff.addAction(ACTION_VIEW_MESSAGE); iff.addAction(ACTION_EDIT_FOLDER); + iff.addAction(ACTION_STORE_ATTACHMENT); lbm.registerReceiver(receiver, iff); if (newIntent) { @@ -592,7 +598,79 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); fragmentTransaction.replace(R.id.content_frame, fragment).addToBackStack("folder"); fragmentTransaction.commit(); + + } else if (ACTION_STORE_ATTACHMENT.equals(intent.getAction())) { + Intent create = new Intent(Intent.ACTION_CREATE_DOCUMENT); + create.addCategory(Intent.CATEGORY_OPENABLE); + create.setType(intent.getStringExtra("type")); + create.putExtra(Intent.EXTRA_TITLE, intent.getStringExtra("name")); + startActivityForResult(create, (int) intent.getLongExtra("id", -1)); } } }; + + @Override + protected void onActivityResult(int requestCode, int resultCode, Intent data) { + if (resultCode == Activity.RESULT_OK) { + Bundle args = new Bundle(); + args.putLong("id", requestCode); + args.putParcelable("uri", data.getData()); + new SimpleTask() { + @Override + protected Void onLoad(Context context, Bundle args) throws Throwable { + long id = args.getLong("id"); + Uri uri = args.getParcelable("uri"); + + File file = EntityAttachment.getFile(context, id); + + ParcelFileDescriptor pfd = null; + FileOutputStream fos = null; + FileInputStream fis = null; + try { + pfd = context.getContentResolver().openFileDescriptor(uri, "w"); + fos = new FileOutputStream(pfd.getFileDescriptor()); + fis = new FileInputStream(file); + + byte[] buffer = new byte[4096]; + int read; + while ((read = fis.read(buffer)) != -1) { + fos.write(buffer, 0, read); + } + } finally { + try { + if (pfd != null) + pfd.close(); + } catch (Throwable ex) { + Log.w(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex)); + } + try { + if (fos != null) + fos.close(); + } catch (Throwable ex) { + Log.w(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex)); + } + try { + if (fis != null) + fis.close(); + } catch (Throwable ex) { + Log.w(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex)); + } + } + + return null; + } + + @Override + protected void onLoaded(Bundle args, Void data) { + Toast.makeText(ActivityView.this, R.string.title_attachment_saved, Toast.LENGTH_LONG).show(); + } + + @Override + protected void onException(Bundle args, Throwable ex) { + Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex)); + Toast.makeText(ActivityView.this, ex.toString(), Toast.LENGTH_LONG).show(); + } + }.load(this, args); + } + } } diff --git a/app/src/main/java/eu/faircode/email/AdapterAttachment.java b/app/src/main/java/eu/faircode/email/AdapterAttachment.java index 51e08509..1b8208c9 100644 --- a/app/src/main/java/eu/faircode/email/AdapterAttachment.java +++ b/app/src/main/java/eu/faircode/email/AdapterAttachment.java @@ -44,6 +44,7 @@ import java.util.List; import androidx.annotation.NonNull; import androidx.core.content.FileProvider; import androidx.lifecycle.LifecycleOwner; +import androidx.localbroadcastmanager.content.LocalBroadcastManager; import androidx.recyclerview.widget.DiffUtil; import androidx.recyclerview.widget.ListUpdateCallback; import androidx.recyclerview.widget.RecyclerView; @@ -63,6 +64,7 @@ public class AdapterAttachment extends RecyclerView.Adapter> liveAttachments(long id); + LiveData> liveAttachments(long message); @Query("SELECT COUNT(id)" + " FROM attachment" + @@ -54,7 +54,13 @@ public interface DaoAttachment { " AND sequence = :sequence") EntityAttachment getAttachment(long message, int sequence); - @Query("UPDATE attachment SET progress = :progress WHERE id = :id") + @Query("SELECT * FROM attachment" + + " WHERE id = :id") + EntityAttachment getAttachment(long id); + + @Query("UPDATE attachment" + + " SET progress = :progress" + + " WHERE id = :id") void setProgress(long id, Integer progress); @Insert @@ -63,6 +69,7 @@ public interface DaoAttachment { @Update void updateAttachment(EntityAttachment attachment); - @Query("DELETE FROM attachment WHERE id = :id") + @Query("DELETE FROM attachment" + + " WHERE id = :id") int deleteAttachment(long id); } diff --git a/app/src/main/res/layout/item_attachment.xml b/app/src/main/res/layout/item_attachment.xml index f008aa28..f26d984b 100644 --- a/app/src/main/res/layout/item_attachment.xml +++ b/app/src/main/res/layout/item_attachment.xml @@ -55,10 +55,20 @@ android:layout_height="24dp" android:layout_marginStart="6dp" android:src="@drawable/baseline_get_app_24" - app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintEnd_toStartOf="@+id/ivSave" app:layout_constraintStart_toEndOf="@id/tvSize" app:layout_constraintTop_toTopOf="parent" /> + + Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ar-rBH/strings.xml b/app/src/main/res/values-ar-rBH/strings.xml index 8edaf1c8..968fd816 100644 --- a/app/src/main/res/values-ar-rBH/strings.xml +++ b/app/src/main/res/values-ar-rBH/strings.xml @@ -131,7 +131,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ar-rEG/strings.xml b/app/src/main/res/values-ar-rEG/strings.xml index 8edaf1c8..968fd816 100644 --- a/app/src/main/res/values-ar-rEG/strings.xml +++ b/app/src/main/res/values-ar-rEG/strings.xml @@ -131,7 +131,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ar-rSA/strings.xml b/app/src/main/res/values-ar-rSA/strings.xml index 8edaf1c8..968fd816 100644 --- a/app/src/main/res/values-ar-rSA/strings.xml +++ b/app/src/main/res/values-ar-rSA/strings.xml @@ -131,7 +131,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ar-rYE/strings.xml b/app/src/main/res/values-ar-rYE/strings.xml index 8edaf1c8..968fd816 100644 --- a/app/src/main/res/values-ar-rYE/strings.xml +++ b/app/src/main/res/values-ar-rYE/strings.xml @@ -131,7 +131,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml index 8edaf1c8..968fd816 100644 --- a/app/src/main/res/values-ar/strings.xml +++ b/app/src/main/res/values-ar/strings.xml @@ -131,7 +131,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ca/strings.xml b/app/src/main/res/values-ca/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-ca/strings.xml +++ b/app/src/main/res/values-ca/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-cs/strings.xml b/app/src/main/res/values-cs/strings.xml index 56c544fa..f85fd53c 100644 --- a/app/src/main/res/values-cs/strings.xml +++ b/app/src/main/res/values-cs/strings.xml @@ -123,7 +123,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-da/strings.xml b/app/src/main/res/values-da/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-da/strings.xml +++ b/app/src/main/res/values-da/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 18934e1a..68dd124d 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -115,7 +115,8 @@ Verschieben Archivieren Antworten - Keine App zur Ansicht verfügbar + No viewer app available for %1$s + Attachment saved E-Mail dauerhaft löschen? Nachricht als Spam melden? Verfassen diff --git a/app/src/main/res/values-el/strings.xml b/app/src/main/res/values-el/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-el/strings.xml +++ b/app/src/main/res/values-el/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-es-rES/strings.xml +++ b/app/src/main/res/values-es-rES/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-fi/strings.xml b/app/src/main/res/values-fi/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-fi/strings.xml +++ b/app/src/main/res/values-fi/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-fr/strings.xml +++ b/app/src/main/res/values-fr/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-he/strings.xml b/app/src/main/res/values-he/strings.xml index fe8ede94..d81e308d 100644 --- a/app/src/main/res/values-he/strings.xml +++ b/app/src/main/res/values-he/strings.xml @@ -123,7 +123,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-hu/strings.xml +++ b/app/src/main/res/values-hu/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-it/strings.xml +++ b/app/src/main/res/values-it/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-iw/strings.xml b/app/src/main/res/values-iw/strings.xml index fe8ede94..d81e308d 100644 --- a/app/src/main/res/values-iw/strings.xml +++ b/app/src/main/res/values-iw/strings.xml @@ -123,7 +123,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml index 84df0196..e2e19c44 100644 --- a/app/src/main/res/values-ja/strings.xml +++ b/app/src/main/res/values-ja/strings.xml @@ -111,7 +111,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml index 84df0196..e2e19c44 100644 --- a/app/src/main/res/values-ko/strings.xml +++ b/app/src/main/res/values-ko/strings.xml @@ -111,7 +111,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-nb/strings.xml b/app/src/main/res/values-nb/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-nb/strings.xml +++ b/app/src/main/res/values-nb/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-nl/strings.xml b/app/src/main/res/values-nl/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-nl/strings.xml +++ b/app/src/main/res/values-nl/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-no/strings.xml b/app/src/main/res/values-no/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-no/strings.xml +++ b/app/src/main/res/values-no/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 56c544fa..f85fd53c 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -123,7 +123,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml index 9c0eabae..6656edf6 100644 --- a/app/src/main/res/values-pt-rBR/strings.xml +++ b/app/src/main/res/values-pt-rBR/strings.xml @@ -115,7 +115,8 @@ Mover Arquivar Responder - Sem aplicativo visualizador + No viewer app available for %1$s + Attachment saved Deletar mensagem permanentemente? Reportar mensagem com spam? Escrever diff --git a/app/src/main/res/values-pt-rPT/strings.xml b/app/src/main/res/values-pt-rPT/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-pt-rPT/strings.xml +++ b/app/src/main/res/values-pt-rPT/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-ro/strings.xml b/app/src/main/res/values-ro/strings.xml index f17c0c6c..ed959626 100644 --- a/app/src/main/res/values-ro/strings.xml +++ b/app/src/main/res/values-ro/strings.xml @@ -119,7 +119,8 @@ Mută Arhivă Răspunde - Nici o aplicație nu poate deschide + No viewer app available for %1$s + Attachment saved Ștergeți definitiv mesajul? Raportați mesajul drept spam? Compune diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml index 56c544fa..f85fd53c 100644 --- a/app/src/main/res/values-ru/strings.xml +++ b/app/src/main/res/values-ru/strings.xml @@ -123,7 +123,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-sr/strings.xml b/app/src/main/res/values-sr/strings.xml index 82cc0b77..9bcef0ef 100644 --- a/app/src/main/res/values-sr/strings.xml +++ b/app/src/main/res/values-sr/strings.xml @@ -119,7 +119,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-sv-rSE/strings.xml b/app/src/main/res/values-sv-rSE/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-sv-rSE/strings.xml +++ b/app/src/main/res/values-sv-rSE/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-tr/strings.xml b/app/src/main/res/values-tr/strings.xml index 107213b6..98d5ab01 100644 --- a/app/src/main/res/values-tr/strings.xml +++ b/app/src/main/res/values-tr/strings.xml @@ -115,7 +115,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-uk/strings.xml b/app/src/main/res/values-uk/strings.xml index 56c544fa..f85fd53c 100644 --- a/app/src/main/res/values-uk/strings.xml +++ b/app/src/main/res/values-uk/strings.xml @@ -123,7 +123,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml index 84df0196..e2e19c44 100644 --- a/app/src/main/res/values-vi/strings.xml +++ b/app/src/main/res/values-vi/strings.xml @@ -111,7 +111,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml index 84df0196..e2e19c44 100644 --- a/app/src/main/res/values-zh-rCN/strings.xml +++ b/app/src/main/res/values-zh-rCN/strings.xml @@ -111,7 +111,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml index 84df0196..e2e19c44 100644 --- a/app/src/main/res/values-zh-rTW/strings.xml +++ b/app/src/main/res/values-zh-rTW/strings.xml @@ -111,7 +111,8 @@ Move Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam? Compose diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index b05a3001..1f177d4a 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -138,7 +138,8 @@ Archive Reply - No viewer app available + No viewer app available for %1$s + Attachment saved Delete message permanently? Report message as spam?