[UMG] Constraint drag within widget

Hi all,

I have a UMG widget (let’s call it main widget) consisting of 2 other widgets (widget 1 and widget 2) in an overlay. I want to be able to drag widget 1 over widget 2 without widget 1 exiting widget 2 bounds.

Drag and drop works like a charm but I can’t figure out how I can constraint widget 1 within widget 2 bounds.

I’ve tried to detect out of bounds in the dragged event of the drag and drop operation, calculate new coordinates within widget2 and set position in viewport for widget 1 but it doesn’t not seem to have any effect.
I also wanted to force the drop on leaving widget 2 but can’t find a way to do that.

Maybe I 'm just looking at it the wrong way. Any idea would be very much appreciated.


I don’t know whether you still need this or not, but for future answer seeker, I did bump into this problem once.

If the out of bound widget (I assume every UMG beside Widget 1 and widget 2) is different UMG Blueprint, you can just set the On Drop function on widgets that were “out of bound” / widgets you don’t want widget 1 to be dropped to. Inside the On Drop function you can set so that Widget 1’s position is back to whatever position you want on Widget 2.