Problem/Motivation
When you have a field of type link, with > 1 cardinality, and the field is set as required, you need to perform 2 steps to be able to remove one of them.
1. You have to move the link you want to remove to the end of the list, then save.
2. You have to edit again the content, and then empty the field values for the link. then, saving the field will remove the link from the list.
If you don't move the link to the end, and save the content, then there are validation errors saying the fields are required, and you cannot remove it.
Steps to reproduce
Create a Link field in a content type, set cardinality to unlimited, and set the field as required.
Create a content, and add 4 example links. Save the content.
Edit the content again, empty all the fields in the first one.
Saving the content shows an error saying that the fields are required.
Then move the link to the last position, and save the content.
Edit the content, and empty all the fields in the last link. Save the content.
The link is removed.
Proposed resolution
A delete button on the side of each link, executing an ajax call should be a good way to solve this. The button should probably have a confirmation dialog to avoid deleting them accidentally.
Another option might be to just modify the validation process, so it allows to empty the fields of a link in the middle or begginning of the list.
Remaining tasks
* Decide what is the best way of approaching this issue.
* Implement the decided solution.
User interface changes
Maybe an icon for deleting the link will be added to the link widget, for allowing easy removal of the links without saving twice.