-
When you start dragging the Frame, store the
AbsolutePosition
andAbsoluteSize
of the frame dragged. This allows you to retain its exact position and size unaffected by its current parent. -
After obtaining the
AbsolutePosition
andAbsoluteSize
, update the Frame’sPosition
andSize
properties using the corresponding offset values. -
Put the Frame out of the ScrollingFrame to a container like the
ScreenGui
. This removes any clipping or constraints imposed by the ScrollingFrame or any other Frame. -
Now that the Frame is in the
ScreenGui
, proceed with dragging as usual, ensuring its position updates smoothly.
Note: If your ScreenGui
has the IngoreGuiInset
property enabled, you will need to add the GuiInset Y
value to the position offset Y
. You can obtain it with the following code:
local guiInsetY = game:GetService("GuiService"):GetGuiInset().Y