Upcoming changes to scroll delta behavior

As both a developer and player that uses both a Windows machine and a macOS machine, I am excited to see fixes for parity across operating systems for scrolling behavior coming.

11 Likes

Is this somehow connected to an issue where scrolling in scrolling frames would get stuck at some point and not let you continue scrolling?

8 Likes

I really appreciate it thanks! :smiley:

10 Likes

Great to see this as an upcoming feature just wish you announced it about 2 weeks ago before I made my own custom scrolling handler

12 Likes

thank you for taking into account devs who use forked playermodules

10 Likes

Does this fix this bug with the client camera?

7 Likes

No, this doesn’t fix that.

Which behavior is used depends on what the firmware of the device you’re using reports for hasPreciseScrollingDeltas. If it’s true, you’ll get panning from (vertical and horizontal) scroll, if it’s false, you’ll get zooming from scroll.

  • For MagicTrackpad and built in Macbook trackpads, hasPreciseScrollingDeltas is true and gives panning.

  • For most traditional mice, even some fancy ones with horizontal scroll capability, hasPreciseScrollingDeltas is false, and gives the intended zooming.

You can probably find a third party program that gives you more control over this but there’s not much we could do short of offering some optional force override of the device behavior.

6 Likes

Did they change that? Because, I can’t open the chat anymore when it’s manually closed. :person_shrugging:

5 Likes

Excellent! The Mouse Enter/Exit behavior has been broken forever

6 Likes

Thank you for considering the feedback!

Does this mean we can finally use trackpad to easily navigate Roblox studio camera?

3 Likes

“Easily” is in the eye of the beholder, I’m fixing scrolling here, not rewriting the Studio camera.

Though it will certainly be a big step up in experience, because Edit camera will zoom smoothly at a sensible rate with trackpad now similar to the other improvements.

10 Likes

-- Why specifically Playstation and not Xbox? My first assumption was the touchpad but the touchpad just isn’t utilized at all last I checked? Can we see input from the touchpad now?

4 Likes

while you plan to bring studio behaviour to client, i’d appreciate a toggle switch to do the opposite, turn off trackpad support in Client… only because logitech’s terrible driver software for their mouses forces trackpad emulation, even though a mouse is not a trackpad (who knew?), so if you try and play roblox with a mx master with the drivers installed, attempting to zoom the camera instead pans the camera on the y axis

and also lack of the ability to shift+scroll on macos has been a pain for YEARS

5 Likes

Sorry, XBox is included, updated the text.

Just forgot to mention XBox because it has no unique code for this: XBox is basically a stripped down Windows computer underneath the covers so it actually uses the same input code as Windows Client.

You can expect the same thing that Windows Client does if you plug non-controller input devices into an XBox.

You may be able to get a third party program that undoes the emulation:

6 Likes

The beta feature is now available,

We recommend keeping the beta feature disabled when you’re not you’re testing how an experience will be impacted, to avoid unintentionally seeing unexpected differences in experience behavior compared to when you were testing in Studio.

10 Likes

Oh, yes.

No, I think I was more thinking about something that I discovered once long ago.

I think that method doesn’t return a string for everything though. Which you can easily counter by checking for that, and if it did, just display the KeyCode Enum itself or something.

Summary

https://devforum.roblox.com/t/add-something-like-specialkeypressed-to-have-a-userinputservice-that-would-get-input-in-a-keyboard-layout-friendly-way/2531712

I think here I had wrong design in mind. But I am not sure.

Based on my old threads, if I look at this https://devforum.roblox.com/t/id-like-to-tell-you-about-textchatservice-and-specialkeypressed-and-the-problem-with-keybinds/2525959

It was “string based” :person_shrugging:
If I want to look at it today again, I’d have to experiment with what SpecialKeyPressed actually does, and study it a bit better.

A lot of these issues… e.g. having / through Numpad or SHIFT + 7 (depending on keyboard layout) was just a thought.

I don’t think there’s any games that determine key based on the string they give. For some reason Roblox had it like that, not sure if they still do, would have to check.

 

I think the bug here is that the Numpad key that returns /, gets returned as an empty string by UserInputService:GetStringForKeycode() the last time I tried it. Which was like 2 years ago.

 

The right design is to use KeyCode IDs, and not string. I think the only issue I encountered back then is that not all of the GetStringForKeycode() returned a string. Which you can easily counter by checking if it returned an empty string, and if it did, just display the KeyCode Enum itself or something.

4 Likes

This is awesome, this will make camera control much easier.

4 Likes

That took slightly longer than expected, but we’re now ready to begin rolling out these changes.

Tomorrow morning we’ll begin rolling the changes out to a small number of desktop users to check that everything is working before doing a full rollout.

1 Like

hi, did this change the studio trackpad controls? The studio trackpad feels a bit unusable right now, it’s very jittery and isn’t recognizing small inputs (camera doesn’t move if I don’t make a huge scroll)

Also when play testing in studio I’m completely unable to zoom now (pinch to zoom does nothing) and the camera controls are super slow

Yes, I rolled this out to desktop, can you DM me detailed information? (OS, Version, Hardware, video of what you’re seeing)