Closed adriangaro closed 1 month ago
Unfortunately, at the moment, this cannot be done (or at the very least would require a lot of work, maybe once I will start working on the module rewrite I might find a solution).
The problem is the drag and drop functionality for participants themselves. Whenever you start dragging something, the participant drop zone appears and it covers the entire sheet (and this was done for ease of use).
What would need to happen is to have a way to know what type of object is being dragged, so that if it is a faction, then I do not display the participant drop zone and thus allow users to drop the faction on specific participants. And honestly, I do not know if I can do this at the moment in a way that is sane. Basically, what would need to happen is for me to set the type of item that is being dragged when the drag itself starts as I cannot determine the type when the element is dragged over. To do that, the only way that I see at the moment is to add a custom function on all sidebar elements that sets the item type on a global variable and based on that I can determine what type of drop zone to use. This however has many issues, so it's not really a solution. I will look into it and see maybe I can figure something out, but no promises.
In the future, with the rework and redesign, maybe I can do something that would allow a fast drag and drop. For now, what I can do is add a drag and drop listener for the edit screen itself so you do not need to select a faction via the dropdown and you can simply drop a faction to set it.
Like I said, at the moment, the feature you requested would require a large rework to be implemented. In version 5.6.0 however, I have added a drag and drop handler on the participant faction tab, so now you can drop a faction on that tab and it will be selected automatically. I know it's not much, but it's the best that I could do for now.
This could be expanded if #50 gets done to allow dragging faction over token to assign faction for the purpose of pull from scene