mirror of https://github.com/M66B/FairEmail.git
Fixed out of memory on viewing large original messages
This commit is contained in:
parent
4fb2e7dbc2
commit
f93e4ca813
|
@ -796,26 +796,16 @@ public class FragmentMessage extends FragmentEx {
|
|||
}
|
||||
|
||||
private void onMenuShowHtml() {
|
||||
new SimpleTask<String>() {
|
||||
@Override
|
||||
protected String onLoad(Context context, Bundle args) throws Throwable {
|
||||
return message.read(context);
|
||||
}
|
||||
Bundle args = new Bundle();
|
||||
args.putLong("id", message.id);
|
||||
args.putString("from", MessageHelper.getFormattedAddresses(message.from, true));
|
||||
|
||||
@Override
|
||||
protected void onLoaded(Bundle a, String html) {
|
||||
Bundle args = new Bundle();
|
||||
args.putString("html", html);
|
||||
args.putString("from", MessageHelper.getFormattedAddresses(message.from, true));
|
||||
FragmentWebView fragment = new FragmentWebView();
|
||||
fragment.setArguments(args);
|
||||
|
||||
FragmentWebView fragment = new FragmentWebView();
|
||||
fragment.setArguments(args);
|
||||
|
||||
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
|
||||
fragmentTransaction.replace(R.id.content_frame, fragment).addToBackStack("webview");
|
||||
fragmentTransaction.commit();
|
||||
}
|
||||
}.load(this, new Bundle());
|
||||
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
|
||||
fragmentTransaction.replace(R.id.content_frame, fragment).addToBackStack("webview");
|
||||
fragmentTransaction.commit();
|
||||
}
|
||||
|
||||
private void onMenuUnseen() {
|
||||
|
|
|
@ -19,6 +19,7 @@ package eu.faircode.email;
|
|||
Copyright 2018 by Marcel Bokhorst (M66B)
|
||||
*/
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.SharedPreferences;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
|
@ -82,11 +83,26 @@ public class FragmentWebView extends FragmentEx {
|
|||
String url = args.getString("url");
|
||||
webview.loadUrl(url);
|
||||
setSubtitle(url);
|
||||
} else if (args.containsKey("html")) {
|
||||
String html = args.getString("html");
|
||||
String from = args.getString("from");
|
||||
webview.loadDataWithBaseURL("email://", html, "text/html", "UTF-8", null);
|
||||
setSubtitle(from);
|
||||
} else if (args.containsKey("id")) {
|
||||
new SimpleTask<String>() {
|
||||
@Override
|
||||
protected String onLoad(Context context, Bundle args) throws Throwable {
|
||||
long id = args.getLong("id");
|
||||
return EntityMessage.read(context, id);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onLoaded(Bundle args, String html) {
|
||||
String from = args.getString("from");
|
||||
webview.loadDataWithBaseURL("email://", html, "text/html", "UTF-8", null);
|
||||
setSubtitle(from);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onException(Bundle args, Throwable ex) {
|
||||
Helper.unexpectedError(getContext(), ex);
|
||||
}
|
||||
}.load(this, args);
|
||||
}
|
||||
|
||||
((ActivityBase) getActivity()).addBackPressedListener(new ActivityBase.IBackPressedListener() {
|
||||
|
|
Loading…
Reference in New Issue