Fix discard draft loosing all changes #11736
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When a post fails to save, it status was set to
AbstractPostRemoteStatusFailed
which should havemade
post.hasNeverAttemptedToUpload
return true hence return false inshouldRemovePostOnDismiss
indiscardChanges()
.WordPress-iOS/WordPress/Classes/ViewRelated/Post/PostEditor+Publish.swift
Line 239 in d05cb73
The problem was that the remoteStatus property was not really being saved. In order to save those changes we are merging the revisions back into the base post.
Fixes #11435
To test:
upload failed post with no changes
1.Be offline
2.Create a new draft
3.Save draft (either through options menu or by exiting the editor and choosing "save draft")
4.rerun xcode
5.See the post with "failed upload" status
6.tap on post
7.Exist editor
8.Choose discard
*Expected - post is not be deleted.
upload failed post with changes:
1.Follow steps 1-6 above
2.Make changes to post
3.Exit editor
4.Choose discard
Expected - Changes made in step 2 will be discarded and the post is not be deleted.
Before:
After:
Update release notes:
If there are user facing changes, I have added an item to RELEASE-NOTES.txt.