Remove the RobloxScriptSecurity lock on SmoothScroll and ScrollRate for ScrollingFrames

The SmoothScroll and ScrollRate properties were just added to ScrollingFrames, but developers cannot use them due to them being behind RobloxScriptSecurity permissions.
image

These are (presumably) used in the ScrollingFrame that the New Explorer Beta uses. It’d be nice for developers to be able to use these as well, especially ScrollRate.

Use case for ScrollRate: Both very small and very large ScrollingFrames are a hassle to use when you have no control over how much one “scroll notch” is. Players of Heroes Battlegrounds often complain that scrolling in the (small) character menu is annoying; us being able to turn down the scroll rate would alleviate this. Similarly, I’ve also noticed that large ScrollingFrames with a lot of text scroll too fast, allowing no granularity in where you scroll to.

Use case for SmoothScroll: Unlocking SmoothScroll would let people making games like RetroStudio match their scrolling to Roblox’s a lot easier. It’d also make any game that requires editing a lot of text (RP bio, for example) snappier.


There’s probably something blocking Roblox from immediately opening these, but I’m making this feature request to, at the very least, show there is interest in using these properties.

12 Likes

We needed this to avoid disruption during the Lua Explorer release but we don’t plan to leave things at that:

  • For one, the scrolling rate on all ScrollingFrames is too high due to a complicated web of past choices. We want to lower the base scrolling rate somewhat, but that’s a big discussion which hasn’t been completed yet.

  • We do want to expose additional control but these two properties are not necessarily the way that we want to expose it. These are rather rigid knobs, which don’t really tell us what the developer was trying to accomplish, making it hard to respect their intent in future scenarios on new platforms etc.

  • But we need additional time to think about the better API design for this. Some ideas: A “Line Height” property / “Scrolling intent” Enum choosing between textual / visual content.

9 Likes

Very good points, thank you for your perspective.

Part of my motivation for creating this feature request was hope that we could get some sort of control quickly (to hopefully avoid a repeat of the XPath issue), so I sorta jumped at the opportunity.

If Roblox has grander visions for this, do you think I should rename the feature request (something along the lines of “Give developers more control over ScrollingFrames”) so this thread can be a bit more general?

2 Likes

That one is definitely an outlier, in that it has taken so much longer than expected to publicly release the Engine Styling system (soon! we literally caused some crashes just this week trying to turn on key parts of it on the client).

4 Likes