ScrollingFrame Changes

Honest to God scrolling updates are so cool like scrolling and the bar slowly drop down like a liquid rlly helps a games overall style

1 Like

You say to set ‘height’ on both of them… is that correct or is one supposed to be width?

1 Like

Good catch! For VerticalScrollBarInset it should be canvas width, not height. I’ve updated the post.

7 Likes

Thank you so much! I think that this has needed some work! And here we go! :grinning:

1 Like

Will we get properties to customize the smoothness of the scroll?

4 Likes

I’d appreciate if you guys could fix this issue with using ScrollingFrames in conjunction with UIPageLayout at some point too: Cannot Swipe to Navigate when UIPageLayout Contains ScrollingFrame

The intention was that portrait-mode users could swipe between pages, but the ScrollingFrame sinks the input.

1 Like

We should have an option to decrease and minimize the smooth scrolling animation. I always hated them, especially on UIs with a lot of elements. They make me awkwardly feel like I should be scrolling more than I have to.

This is really cool! Two related issues with scrolling; firstly, it’s way too sensitive on my laptop as even the smallest movements cause the scrolling to ‘jump’ as if I had scrolled with a regular mouse.

Secondly, it still doesn’t seem to support continuous scrolling with my precision mouse. Instead of scrolling continuously (similar to a trackpad), it does the same thing except with normal sensitivity, as if I’m using a regular mouse with a ‘clicky’ scroll wheel.

My laptop is a Surface Laptop 2 (using Microsoft’s precision drivers) and my mouse is the Surface Ergonomic Mouse if that helps.

1 Like

Will this update fix the scroll bar images not alligning properly when scrolling?

4 Likes

Excellent news. I was praying for some QoL updates for ScrollingFrames.

ScrollingFrames are great but they still don’t work perfectly with UIListLayout. This is probably a separate feature request that maybe one day I’ll get around to writing, but you can’t use scale for child views of a list because scale is a proportion of the CanvasSize not the visible size of the scrolling frame.

If I want to display 5 items in my scrolling frame at a time I can’t just set them to Y = {0.2,0}. I can either do some mental gymnastics to figure out the scale required to fit a certain amount of elements in the entire canvas or I just use offset which is noticeably terrible when used in scrolling frames.

I know we probably can never have this with the current system though :frowning:

5 Likes

it’s the same with all the layouts, while the code to scale it correctly is pretty simple it is annoying there is no in-built way to make it use the actual size of the frame.

Ah, perfect. I’ve been using ScrollingFrames a lot recently, and I’m sure this will be a nice upgrade.

These changes sound great! :smile:

3 Likes

Thanks everyone for your amazing feedback! To address some of the questions that have come up:

We have no plans to introduce developer controls for the scroll smoothness, sorry! We’d prefer to keep the feel of this consistent across Roblox.

This is on our list of things to fix, but I don’t have an ETA right now.

We’ve discussed this feature internally but it got deprioritized because we weren’t sure how much demand there was for it :frowning: Please open a feature request so we can get a better idea of how popular this is!

This would be a setting that users can set in the in-game menu, not as a setting that developers can control, to be clear.

This sounds like your trackpad does not support pointer actions - do you have the advanced trackpad controls for your camera available? It should behave pretty smoothly if they’re supported.

Our input pipeline doesn’t support this type of input right now - we can’t tell the difference between a linear scroll wheel and a stepped (clicky) one currently. It’s possible that this could improve in the future, but I’m not sure how much information we get from the OS/your mouse drivers about this, so it may not be possible.

It will not, sorry! We plan to fix this in a future update but it’s been somewhat tricky to get right. Soon™.

We actually have a ticket internally for implementing this behavior! I (again) can’t provide an ETA but it would be an option that you can toggle on the scrolling frame that would size children against the scrolling frame’s size, not the canvas size.

11 Likes

I’m thoroughly thrilled that ROBLOX is taking time to improve ScrollingFrames. They play a huge role in UI design and, with me using them more frequently, I’ve came across multiple bugs that will hopefully be fixed. Thanks!

Love it! I can do the Scrolling Frame smoother! :slight_smile:

These updates are really helping out!


This happens with rotated text in a scrollingframe, I think this isn’t supposed to be so.

4 Likes

This is because ClipsDescendants does not work with non-0 rotation. This isn’t related nor exclusive to ScrollingFrames, or this update.

3 Likes