GNOME Bugzilla – Bug 759046
Undo deletes the wrong text and redo does not add it back
Last modified: 2015-12-06 14:16:15 UTC
Table of Contents ───────────────── 1 Steps to reproduce 2 Actual results 3 Expected results 4 Test setup 5 Data loss 1 Steps to reproduce ════════════════════ 1. In Evolution, create a new html email. 2. Position the cursor at the start of the email body. 3. In any other application, copy the letter "a" to the clipboard. 4. In Evolution, hit ctrl+shift+v 5. Hit Home 6. Hit enter 7. Type "b" 8. Hit enter 9. In any other application, copy the letter "c" to the clipboard 10. In Evolution, hit ctrl+shift+v 11. Hit ctrl+z 12. Hit ctrl+shift+z 2 Actual results ════════════════ After hitting ctrl+z, the first quotation (containing the letter "a") is deleted. After hitting ctrl+shift+z, the cursor merely moves - the deleted text is not restored. 3 Expected results ══════════════════ After hitting ctrl+z, the last quotation (containing the letter "c") should be deleted. After hitting ctrl+shift+z, it should be restored. 4 Test setup ════════════ I reproduced this bug on two setups: 1. Ubuntu 15.10 with gnome3 and gnome3-staging PPAs, fully upgraded [1] as of 2015-12-04. Evolution is 3.18.2-0ubuntu1~wily1. This is my real work desktop. 2. Fedora Live Workstation 23 64bits (Fedora-Live-Workstation-x86_64-23-10.iso) in Virtualbox. 5 Data loss ═══════════ This bug has been happening for some time, and I just tried to live without undo. But today (2015-12-04) I forgot about the bug and hit ctrl+z, causing Evolution to erase everything I had written. Redo did not work. Then I decided to take the time to report this bug. Footnotes ───────── [1] A few packages are held from upgrading. See: $ apt-get -s upgrade NOTE: This is only a simulation! apt-get needs root privileges for real execution. Keep also in mind that locking is deactivated, so don't depend on the relevance to the real current situation! Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... The following packages were automatically installed and are no longer required: linux-image-3.19.0-31-generic linux-image-extra-3.19.0-31-generic Use 'apt-get autoremove' to remove them. Done The following packages have been kept back: account-plugin-jabber cheese cheese-common empathy empathy-common gnome-contacts mcp-account-manager-uoa 0 upgraded, 0 newly installed, 0 to remove and 7 not upgraded.
Correcting section 5 Data loss of first comment: Evolution didn't erase everything, but it erased a most of what I had written. So substitute "most of what" for "everything".
I see now that I am also affected by https://bugzilla.gnome.org/show_bug.cgi?id=749712. This looks like a duplicate.
Thank you for your bugreport. You rightly identified your main problem. Also when trying your steps it does not behave correctly for me as well.
Fixed with following commits: Bug 759046 - Undo deletes the wrong text and redo does not add it back Undoing the 'Paste Quotation' action will remove is deleting the block where is was done which later leads to broken undo/redo stack. commit 73a8ecd9b0c0c5cd1569d7fad8b266e68efa516a in the master branch for Evolution 3.19.3+ commit c3e6a6c153ae5daaabfe7ec015599c1f8e042218 in the gnome-3-18 branch for Evolution 3.18.3+ EHTMLEditorView - 'Paste Quotation' action in HTML mode is not setting the caret to the right position commit a8992969abcba9cd9479d787f28b67387b3e59bf in the master branch for Evolution 3.19.3+ commit 08fce00ebbcf7779a6244d92e718f4ed93d32b61 in the gnome-3-18 branch for Evolution 3.18.3+ EHTMLEditorView - Undoing and redoing Return press in the beginning of citation is wrong commit 364712f69528874fd47620739bc75ec40b39b469 in the master branch for Evolution 3.19.3+ commit 7de56e267c7780670a2c209b24098ac73ee59849 in the gnome-3-18 branch for Evolution 3.18.3+