"Delete collection and items" should not delete items that are in other collections
I'm not 100% sure what should be the expected behavior here, since I can think of use cases for each, but it seems a bit odd that deleting a collection with items would also delete items from another collection. I think only items that are not found in other collections should be moved to trash.
E.g. I create a collection for a topic I am researching and I end up adding some existing items to the collection from other topics in my library. I eventually decide to drop the topic and get rid of all the items on the topic. I would delete collection and items, but that would also remove items that I copied over from other collections.
I think there are also some cases where removing item from all collections is also useful, so this probably shouldn't be the general behavior for deleting items.
IMO, when moving items to trash, there should either be a checkbox, or another button that goes something like "Remove from entire library". I get that "Move to Trash" is supposed to imply removing from entire library, but I don't think that this distinction is obvious to users. The whole collection concept is quite difficult to grasp for the general user, since they draw a lot of parallels between Zotero and file managers.
In either case, we should also fix Del/Shift+Del behavior in library root. I think it is partially my fault (since I suggested/agreed with this behavior) that in library root Shift+Del does not ask for confirmation. IMO, the less confusing behavior would be to keep it consistent with collections. I.e. in library root, Del should remove from collection (so no action) and Shift+Del should prompt to move to trash.
E.g. I create a collection for a topic I am researching and I end up adding some existing items to the collection from other topics in my library. I eventually decide to drop the topic and get rid of all the items on the topic. I would delete collection and items, but that would also remove items that I copied over from other collections.
I think there are also some cases where removing item from all collections is also useful, so this probably shouldn't be the general behavior for deleting items.
IMO, when moving items to trash, there should either be a checkbox, or another button that goes something like "Remove from entire library". I get that "Move to Trash" is supposed to imply removing from entire library, but I don't think that this distinction is obvious to users. The whole collection concept is quite difficult to grasp for the general user, since they draw a lot of parallels between Zotero and file managers.
In either case, we should also fix Del/Shift+Del behavior in library root. I think it is partially my fault (since I suggested/agreed with this behavior) that in library root Shift+Del does not ask for confirmation. IMO, the less confusing behavior would be to keep it consistent with collections. I.e. in library root, Del should remove from collection (so no action) and Shift+Del should prompt to move to trash.
(Actually calculating the items for the exclude behavior would take a bit more work.)
The logic here has always just been that Delete does the default removal action and the modifier does something more dangerous. So in the library root, the default removal action is moving to the trash with a confirmation, and in a collection that's removing from the collection.
I'll work on that checkbox when I get a chance. Wanted to agree on the concept first though.
In the OS X Finder, Cmd-Delete also moves files to the trash without confirmation (and Delete alone doesn't actually do anything, so there's never a prompt for moving to the trash).