If you register for a drag, you also need <OnDragStart> and <OnDragStop>. And within you'll need to StartMoving and StopMovingOrSizing.
When something is dragged, the mouse needs to move off the element while the button is down. For moving whole dialog frames this isn't a good method. Most just react to OnMouseDown and OnMouseUp:
<Scripts>
<OnMouseDown>
if arg1=="LeftButton" then this:StartMoving() end
</OnMouseDown>
<OnMouseUp>
if arg1=="LeftButton" then this:StopMovingOrSizing() end
</OnMouseUp>
</Scripts>
hehe np. An interesting trick with StartMoving etc is you can move other frames from other frames.
MoveAnything and the Discord equivalent do the job well enough that there's no need, but one addon idea I had was a little "tug boat" button that you dragged around the screen with the left button, then when you did a OnDragStart (with right button registered) it would hide the tug boat to get the name of the window beneath, then StartMoving that window and stop when you let go.
So you could (in theory) move any window without knowing its name.
Well that's a rather cool idea... MoveAnything does that for you, but I'm guessing your idea I far more "script-saving" than move anything... You'd have that script you gave me with an extra
local frame = MouseOver:GetName()
and we're set to move any frame... That is really cool.