Remove unneeded `isDirty` flag from message data builder class

This commit is contained in:
Zorica Stojchevska 2021-09-10 17:36:39 +02:00 committed by Zorica Stojchevska
parent e5b2e4068a
commit 1a3aad6854
3 changed files with 1 additions and 36 deletions

View File

@ -211,7 +211,6 @@ public class ComposeMessageActivity
private static final int REQUEST_CODE_ADD_ATTACHMENTS = 1;
private static final String STATE_ATTACHMENT_LIST = "attachment_list";
private static final String STATE_ADDITIONAL_ROWS_VISIBLE = "additional_rows_visible";
private static final String STATE_DIRTY = "dirty";
private static final String STATE_DRAFT_ID = "draft_id";
private static final String STATE_ADDED_CONTENT = "added_content";
private static final char[] RECIPIENT_SEPARATORS = {',', ';', ' '};
@ -500,7 +499,6 @@ public class ComposeMessageActivity
mAreAdditionalRowsVisible = true;
focusRespondInline();
}
composeMessageViewModel.setIsDirty(true);
List<LocalAttachment> attachmentsList = new ArrayList<>();
if (extras.containsKey(EXTRA_MESSAGE_ATTACHMENTS)) {
attachmentsList = extras.getParcelableArrayList(EXTRA_MESSAGE_ATTACHMENTS);
@ -649,7 +647,6 @@ public class ComposeMessageActivity
return;
}
skipInitial++;
composeMessageViewModel.setIsDirty(true);
composeMessageViewModel.autoSaveDraft(text.toString());
}
@ -801,7 +798,6 @@ public class ComposeMessageActivity
}
}
});
composeMessageViewModel.setIsDirty(true);
}
}
@ -841,7 +837,6 @@ public class ComposeMessageActivity
) != null;
if (!alreadyAdded) {
composeMessageViewModel.setIsDirty(true);
attachmentsList.add(new LocalAttachment(Uri.parse(event.uri), event.displayName, event.size, event.mimeType));
renderViews();
composeMessageViewModel.saveImportedAttachmentsToDB();
@ -918,7 +913,6 @@ public class ComposeMessageActivity
super.onSaveInstanceState(outState);
outState.putParcelableArrayList(STATE_ATTACHMENT_LIST, new ArrayList<>(composeMessageViewModel.getMessageDataResult().getAttachmentList()));
outState.putBoolean(STATE_ADDITIONAL_ROWS_VISIBLE, mAreAdditionalRowsVisible);
outState.putBoolean(STATE_DIRTY, composeMessageViewModel.getMessageDataResult().isDirty());
outState.putString(STATE_DRAFT_ID, composeMessageViewModel.getDraftId());
if (largeBody) {
outState.putBoolean(EXTRA_MESSAGE_BODY_LARGE, true);
@ -940,8 +934,6 @@ public class ComposeMessageActivity
String draftId = savedInstanceState.getString(STATE_DRAFT_ID);
composeMessageViewModel.setDraftId(!TextUtils.isEmpty(draftId) ? draftId : "");
composeMessageViewModel.setInitialMessageContent(savedInstanceState.getString(EXTRA_MESSAGE_BODY));
// Dirty flag should be reset only once message queue has completed the setting of saved tokens
toRecipientView.post(() -> composeMessageViewModel.setIsDirty(savedInstanceState.getBoolean(STATE_DIRTY)));
}
@Override
@ -1086,14 +1078,12 @@ public class ComposeMessageActivity
} else if (recipientsView.equals(bccRecipientView)) {
destination = GetSendPreferenceJob.Destination.BCC;
}
composeMessageViewModel.setIsDirty(true);
composeMessageViewModel.startSendPreferenceJob(emailList, destination);
}
@Override
public void onTokenRemoved(MessageRecipient token) {
composeMessageViewModel.setIsDirty(true);
recipientsView.removeKey(token.getEmailAddress());
recipientsView.removeToken(token.getEmailAddress());
}
@ -1271,10 +1261,8 @@ public class ComposeMessageActivity
ArrayList<LocalAttachment> resultAttachmentList = data.getParcelableArrayListExtra(AddAttachmentsActivity.EXTRA_ATTACHMENT_LIST);
ArrayList<LocalAttachment> listToSet = resultAttachmentList != null ? resultAttachmentList : new ArrayList<>();
composeMessageViewModel.setAttachmentList(listToSet);
composeMessageViewModel.setIsDirty(true);
String oldDraftId = composeMessageViewModel.getDraftId();
afterAttachmentsAdded();
composeMessageViewModel.setIsDirty(true);
} else if (resultCode == RESULT_OK && requestCode == REQUEST_CODE_VALIDATE_PIN) {
// region pin results
if (data.hasExtra(EXTRA_ATTACHMENT_IMPORT_EVENT)) {
@ -1305,7 +1293,6 @@ public class ComposeMessageActivity
private void afterAttachmentsAdded() {
composeMessageViewModel.setBeforeSaveDraft(false, messageBodyEditText.getText().toString());
composeMessageViewModel.setIsDirty(true);
renderViews();
}
@ -1791,10 +1778,6 @@ public class ComposeMessageActivity
private class ComposeBodyChangeListener implements View.OnKeyListener {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (keyCode != KeyEvent.KEYCODE_BACK) {
composeMessageViewModel.setIsDirty(true);
}
return false;
}
}
@ -1866,7 +1849,6 @@ public class ComposeMessageActivity
if (!allowSpinnerListener) {
return;
}
composeMessageViewModel.setIsDirty(true);
String email = (String) fromAddressSpinner.getItemAtPosition(position);
boolean localAttachmentsListEmpty = composeMessageViewModel.getMessageDataResult().getAttachmentList().isEmpty();
if (!composeMessageViewModel.isPaidUser() && MessageUtils.INSTANCE.isPmMeAddress(email)) {
@ -2014,7 +1996,6 @@ public class ComposeMessageActivity
}
if (result != null && result.getStatus() == Status.SUCCESS) {
composeMessageViewModel.setBeforeSaveDraft(false, messageBodyEditText.getText().toString());
composeMessageViewModel.setIsDirty(true);
renderViews();
}
}

View File

@ -42,7 +42,6 @@ class MessageBuilderData(
val mBigContentHolder: BigContentHolder,
val attachmentList: ArrayList<LocalAttachment>,
val embeddedAttachmentsList: ArrayList<LocalAttachment>,
var isDirty: Boolean,
val signature: String,
val mobileFooter: String,
val messagePassword: String?,
@ -112,7 +111,6 @@ class MessageBuilderData(
this.attachmentList = oldObject.attachmentList
this.embeddedAttachmentsList = oldObject.embeddedAttachmentsList
this.isDirty = oldObject.isDirty
this.signature = oldObject.signature
this.mobileFooter = oldObject.mobileFooter
@ -180,8 +178,6 @@ class MessageBuilderData(
fun embeddedAttachmentsList(embeddedAttachments: ArrayList<LocalAttachment>) =
apply { this.embeddedAttachmentsList = embeddedAttachments }
fun isDirty(isDirty: Boolean) = apply { this.isDirty = isDirty }
fun signature(signature: String) = apply { this.signature = signature }
fun mobileFooter(mobileFooter: String) =
@ -242,7 +238,6 @@ class MessageBuilderData(
mBigContentHolder,
attachmentList,
embeddedAttachmentsList,
isDirty,
signature,
mobileFooter,
messagePassword,

View File

@ -446,7 +446,6 @@ class ComposeMessageViewModel @Inject constructor(
// overwrite "old sender ID" when updating draft
_oldSenderAddressId = message.addressID ?: _messageDataResult.addressId
setIsDirty(false)
//endregion
} else {
//region new draft here
@ -474,11 +473,10 @@ class ComposeMessageViewModel @Inject constructor(
)
_oldSenderAddressId = ""
setIsDirty(false)
//endregion
}
_messageDataResult = MessageBuilderData.Builder().fromOld(_messageDataResult).isDirty(false).build()
_messageDataResult = MessageBuilderData.Builder().fromOld(_messageDataResult).build()
}
}
@ -733,7 +731,6 @@ class ComposeMessageViewModel @Inject constructor(
@Synchronized
fun sendMessage(message: Message) {
setIsDirty(false)
val messageWithExpirationTime = addExpirationTimeToMessage(message, _messageDataResult.expiresAfterInSeconds)
if (sendingInProcess) {
@ -889,13 +886,6 @@ class ComposeMessageViewModel @Inject constructor(
.build()
}
fun setIsDirty(isDirty: Boolean) {
_messageDataResult = MessageBuilderData.Builder()
.fromOld(_messageDataResult)
.isDirty(isDirty)
.build()
}
fun setSender(senderName: String, senderAddress: String) {
_messageDataResult = MessageBuilderData.Builder()
.fromOld(_messageDataResult)
@ -1210,7 +1200,6 @@ class ComposeMessageViewModel @Inject constructor(
fun finishBuildingMessage(contentFromComposeBodyEditText: String) {
setUploadAttachments(true)
setIsDirty(false)
_actionType = UserAction.FINISH_EDIT
var content = contentFromComposeBodyEditText