mirror of https://github.com/M66B/FairEmail.git
Prevent crash
This commit is contained in:
parent
2bfee5ff6e
commit
5bb959448c
|
@ -2431,14 +2431,19 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
|
|||
|
||||
@Override
|
||||
public void onPageFinished(WebView view, String url) {
|
||||
try {
|
||||
PrintManager printManager = (PrintManager) context.getSystemService(Context.PRINT_SERVICE);
|
||||
String jobName = context.getString(R.string.app_name);
|
||||
if (!TextUtils.isEmpty(data.message.subject))
|
||||
jobName += " - " + data.message.subject;
|
||||
PrintDocumentAdapter adapter = printWebView.createPrintDocumentAdapter(jobName);
|
||||
printManager.print(jobName, adapter, new PrintAttributes.Builder().build());
|
||||
} catch (Throwable ex) {
|
||||
Log.e(ex);
|
||||
} finally {
|
||||
printWebView = null;
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
printWebView.loadDataWithBaseURL("email://", html, "text/html", "UTF-8", null);
|
||||
|
@ -2557,6 +2562,7 @@ public class AdapterMessage extends RecyclerView.Adapter<AdapterMessage.ViewHold
|
|||
|
||||
popupMenu.getMenu().findItem(R.id.menu_share).setEnabled(data.message.content);
|
||||
popupMenu.getMenu().findItem(R.id.menu_print).setEnabled(hasWebView && data.message.content);
|
||||
popupMenu.getMenu().findItem(R.id.menu_print).setVisible(Helper.canPrint(context));
|
||||
|
||||
popupMenu.getMenu().findItem(R.id.menu_show_headers).setChecked(show_headers);
|
||||
popupMenu.getMenu().findItem(R.id.menu_show_headers).setEnabled(data.message.uid != null);
|
||||
|
|
|
@ -1035,6 +1035,11 @@ public class Helper {
|
|||
return false;
|
||||
}
|
||||
|
||||
static boolean canPrint(Context context) {
|
||||
PackageManager pm = context.getPackageManager();
|
||||
return pm.hasSystemFeature("android.software.print");
|
||||
}
|
||||
|
||||
public static String getFingerprint(Context context) {
|
||||
try {
|
||||
PackageManager pm = context.getPackageManager();
|
||||
|
|
Loading…
Reference in New Issue