Set contact info in download phase

pull/146/head
M66B 7 years ago
parent 1d99a40216
commit 35407bf289

@ -565,7 +565,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
draft.subject = context.getString(R.string.app_name) + " " + BuildConfig.VERSION_NAME + " crash log"; draft.subject = context.getString(R.string.app_name) + " " + BuildConfig.VERSION_NAME + " crash log";
draft.content = true; draft.content = true;
draft.received = new Date().getTime(); draft.received = new Date().getTime();
draft.getAvatar(context); draft.setContactInfo(context);
draft.id = db.message().insertMessage(draft); draft.id = db.message().insertMessage(draft);
draft.write(context, body); draft.write(context, body);
@ -871,7 +871,7 @@ public class ActivityView extends ActivityBilling implements FragmentManager.OnB
draft.subject = context.getString(R.string.app_name) + " " + BuildConfig.VERSION_NAME + " debug info"; draft.subject = context.getString(R.string.app_name) + " " + BuildConfig.VERSION_NAME + " debug info";
draft.content = true; draft.content = true;
draft.received = new Date().getTime(); draft.received = new Date().getTime();
draft.getAvatar(context); draft.setContactInfo(context);
draft.id = db.message().insertMessage(draft); draft.id = db.message().insertMessage(draft);
draft.write(context, body); draft.write(context, body);

@ -201,7 +201,7 @@ public class EntityMessage implements Serializable {
} }
} }
void getAvatar(Context context) { boolean setContactInfo(Context context) {
if (ContextCompat.checkSelfPermission(context, Manifest.permission.READ_CONTACTS) if (ContextCompat.checkSelfPermission(context, Manifest.permission.READ_CONTACTS)
== PackageManager.PERMISSION_GRANTED) { == PackageManager.PERMISSION_GRANTED) {
this.avatar = null; this.avatar = null;
@ -234,6 +234,8 @@ public class EntityMessage implements Serializable {
if (!TextUtils.isEmpty(displayName)) if (!TextUtils.isEmpty(displayName))
((InternetAddress) this.from[i]).setPersonal(displayName); ((InternetAddress) this.from[i]).setPersonal(displayName);
return true;
} }
} finally { } finally {
if (cursor != null) if (cursor != null)
@ -244,6 +246,8 @@ public class EntityMessage implements Serializable {
Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex)); Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex));
} }
} }
return false;
} }
static String getQuote(Context context, long id) throws IOException { static String getQuote(Context context, long id) throws IOException {

@ -1202,7 +1202,7 @@ public class FragmentCompose extends FragmentEx {
result.draft.content = true; result.draft.content = true;
result.draft.received = new Date().getTime(); result.draft.received = new Date().getTime();
result.draft.getAvatar(context); result.draft.setContactInfo(context);
result.draft.id = db.message().insertMessage(result.draft); result.draft.id = db.message().insertMessage(result.draft);
result.draft.write(context, body == null ? "" : body); result.draft.write(context, body == null ? "" : body);

@ -215,7 +215,7 @@ public class Helper {
draft.subject = context.getString(R.string.app_name) + " " + BuildConfig.VERSION_NAME + " crash log"; draft.subject = context.getString(R.string.app_name) + " " + BuildConfig.VERSION_NAME + " crash log";
draft.content = true; draft.content = true;
draft.received = new Date().getTime(); draft.received = new Date().getTime();
draft.getAvatar(context); draft.setContactInfo(context);
draft.id = db.message().insertMessage(draft); draft.id = db.message().insertMessage(draft);
draft.write(context, body); draft.write(context, body);

@ -2193,7 +2193,6 @@ public class ServiceSynchronize extends LifecycleService {
message.ui_found = false; message.ui_found = false;
message.ui_ignored = false; message.ui_ignored = false;
message.ui_browsed = browsed; message.ui_browsed = browsed;
message.getAvatar(context);
message.id = db.message().insertMessage(message); message.id = db.message().insertMessage(message);
@ -2249,11 +2248,6 @@ public class ServiceSynchronize extends LifecycleService {
Log.i(Helper.TAG, folder.name + " updated id=" + message.id + " uid=" + message.uid + " unhide"); Log.i(Helper.TAG, folder.name + " updated id=" + message.id + " uid=" + message.uid + " unhide");
} }
boolean noavatar = TextUtils.isEmpty(message.avatar);
message.getAvatar(context);
if (noavatar != TextUtils.isEmpty(message.avatar))
update = true;
if (update) if (update)
db.message().updateMessage(message); db.message().updateMessage(message);
} }
@ -2287,6 +2281,9 @@ public class ServiceSynchronize extends LifecycleService {
List<EntityAttachment> attachments = db.attachment().getAttachments(message.id); List<EntityAttachment> attachments = db.attachment().getAttachments(message.id);
MessageHelper helper = new MessageHelper(imessage); MessageHelper helper = new MessageHelper(imessage);
if (message.setContactInfo(context))
db.message().updateMessage(message);
boolean fetch = false; boolean fetch = false;
if (!message.content) if (!message.content)
if (!metered || (message.size != null && message.size < download)) if (!metered || (message.size != null && message.size < download))

Loading…
Cancel
Save