Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Support copying folders #103

Closed
ursa34 opened this issue Jan 26, 2021 · 4 comments
Closed

Feature Request: Support copying folders #103

ursa34 opened this issue Jan 26, 2021 · 4 comments
Assignees

Comments

@ursa34
Copy link

ursa34 commented Jan 26, 2021

There is a 'move folder' function and I think it would be useful to have a "copy" option on that function.

@RealRaven2000 RealRaven2000 self-assigned this Jan 26, 2021
@RealRaven2000
Copy link
Owner

RealRaven2000 commented Jan 26, 2021

To clarify - move folder is not an explicit command or menu option from QuickFolders but it is implicitely supported via the following actions:

  • hold down Shift and drag+drop one (or multiple) folders on a QuickFolders Tab (representing a folder) - also supports moving folders to any child folders from the dropdown menu of said Tab.
  • drag+drop folders onto the quickMove button (or pressing Shift+M while the folder tree is highlighted)

if you mean any different way of moving folders, I would need to know (because it may not be a QuickFolders function in that case)

The quickMove button also accepts emails (and the modifier key Ctrl can be held to force copying the emails) so a good way to extend into folders would be using Ctrl during the drop of folders, too.

@RealRaven2000 RealRaven2000 changed the title feature request: add "copy" option Feature Request: Support copying folders Jan 26, 2021
@RealRaven2000 RealRaven2000 pinned this issue Jan 26, 2021
@RealRaven2000 RealRaven2000 unpinned this issue Feb 3, 2021
@RealRaven2000 RealRaven2000 pinned this issue Feb 25, 2021
@RealRaven2000
Copy link
Owner

Here is a test version - you can add folders for copying by dragging them to the quickMove button while holding "Ctrl" key pressed. They will also now be listed in the menu (and you can add more items before executing the folder copy). The icon will differ depending on whether you copy or move:#
image

QuickFolders-wx-5.4pre112.zip
(Install this by downloading the zip file and drag into Thunderbird Add-ons manager)

Since it can be a rather big / expensive operation you will get a messagebox asking for confirmation. If you cancel out of this messagebox all search items are cleared again.

@RealRaven2000
Copy link
Owner

RealRaven2000 commented Mar 14, 2021

Today I added a fix to make it work in Thunderbird 87, too. Looking at the new copy service (MailServices.copy) and its usage in Thunderbird, one thing they seem to never do is move folders across servers - the fourth argument "isCopy" is simply set to:
folders[0].server == targetFolder.server

Not sure if this is to indicate anything but maybe there is problem moving folders from one account to another - I haven't sufficiently tested this yet. You can see the behavior when you drag around folders within the tree - they are moved within the account but always copied when dropping on another account:

https://searchfox.org/comm-central/source/mail/base/content/folderPane.js#980

One should bear in mind that when a folder is moved / copied to an IMAP account, all data has to be uploaded to the server, so I am not sure how "safe" this whole operation is and what happens if Thunderbird crashes / is closed during this process. I guess everything is copied locally (hopefully the emails are downloaded at this stage already!) and synchronization should resume later. I am not a great fan of IMAP as it seems to add a load of wasteful network traffic.

@RealRaven2000
Copy link
Owner

Implemented in 5.4 - Released 18/03/2021

@RealRaven2000 RealRaven2000 unpinned this issue Mar 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants