GNOME Bugzilla – Bug 245025
Popup confirmation when moving a folder (via drag and drop)
Last modified: 2012-04-06 19:58:23 UTC
I would like an option added so that Evolution can ask the user if they really want to move a mail folder into another mail folder.. This is due to an annoyance where if you select a mail folder and "slightly" move the mouse while the button is down evolution will move the selected folder into the folder just above or just below..
*** Bug 353445 has been marked as a duplicate of this bug. ***
*** Bug 661414 has been marked as a duplicate of this bug. ***
Let me be a little pushy here and say that could be considered a bug instead of just and enhancement. It's really easy to move folders unintentionally, and I apparently hit another bug which resulted in the folders I moved unintentionally to be deleted. But even without that, it's a lot of trouble moving hundreds of mail around imap without confirmation, when the draggable directories are right beside the scrollbar.
I agree. It happens to me all the time. Dnd in the folder tree is basically *always* unintentional and harmful, we would be much better off without it.
*** Bug 666468 has been marked as a duplicate of this bug. ***
Created attachment 211489 [details] [review] evo patch for evolution; This does the confirmation dialog with options Yes/No/Always/Never. I also distinguish between copy and move operation, and once you have for it "never", then the drop just does nothing. This command can be used to let it ask for move operation again (key is similar for 'copy'): $ dconf write /org/gnome/evolution/mail/prompt-on-folder-drop-move "\"\"" Note of the removal of tree_drag_data_delete(), because it was redundant there, and could lead to misbehaviour (in this function was called camel_store_delete_folder_sync(), while the same is done in em_folder_utils_copy_folders()). The GTK_DEST_DEFAULT_DROP does a little bit mess here as well, as it was calling gtk_drag_finish() again (evo's code called it already as unsuccessful), as succeeded and in case of move operation as to-delete, thus this camel_store_delete_folder_sync() was called within tree_drag_data_delete() on a folder which was supposed to stay as is.
Created commit 37e79de in evo master (3.5.1+) Removal of tree_drag_data_delete() from stable (only that function remove): Created commit b35a84a in evo gnome-3-4 (3.4.1+)
Thanks a lot!