Toolbox being a Lua Widget

As a Roblox developer, it is currently difficult to use the Toolbox as of the new Studio update, which makes the Toolbox a Lua Widget.

You can no longer use shortcuts as you were able to before, when focused in the text box, such as Control+A, Control+C, highlight the text with your cursor, and basically every other TextBox limitation there are in ordinary GUI TextBoxes.


And as a result of this being a Lua Widget, we now suffer from existing GUI bugs that have been an issue in games for the longest time now; mouse enter and mouse leaving events not firing.

https://i.gyazo.com/62f00524d05f2c52f11a362411b6d5ed.mp4


Additionally, if you scroll, and move your cursor outside of the Lua Widget window, the scrolling sticks, because it doesn’t know you let go of the scrollbar, as you released it outside of the widget. The same applies for if you move your cursor outside of the widget, then back in.

https://i.gyazo.com/b2c62a2815baa3742b4765cf8d7aefc0.mp4


I don’t think the toolbox should’ve been made into a Lua Widget, as it is one of the core tools used in Studio, on the level of properties, explorer, etc. and making it into a widget has only limited its abilities. Before, you could right click assets in the toolbox to copy its id, and among other options, but I can’t necessarily remember because I don’t have it anymore.

Perhaps the old toolbox can be toggled in place of the Lua Widget version.

8 Likes

We’re currently working on making textboxes support text selection, copy, and more keybinds. We’re also currently working to ship a fix for MouseEnter/MouseLeave not working properly. We’ll look into the scrollbar sticking issue.

19 Likes

I understand your frustration around these changes. Part of the reason we are porting the toolbox to Lua is to make sure deficiencies like this get addressed. All of the fixes will help UI, not just in Studio, but in game too. We’re also A/B testing the toolbox to make sure these changes don’t have a negative impact on toolbox engagement.

Regarding context menus, we are in the process of implementing a context menu API so you will be able to right-click on a toolbox item and choose various actions, such as copy a decal’s ID or open its page in a web browser. This API will eventually be exposed to all plugins.

23 Likes

Since A/B testing started for the Lua Widget toolbox, it has become very difficult for me as a Roblox developer to continue using it.

The move to a lua-based widget is a great step, but there are many quirks and missing features in its current iteration that hampers my development pipeline.

I know issues 1 and 2 are being resolved:

But I am still going to leave them in this thread for historical reasons.


  1. You can no longer do text and context menu operations in the Toolbox

You could select text, copy it, cut it, among other operations. This iteration of the toolbox doesn’t allow me to do either, other than pasting into the search bar TextBox.

  1. The toolbox suffers from the unpredictable behavior of MouseEnter/MouseLeave, and scrollbars don’t get “released” when the mouse button is released

Buttons sometimes freak out due to MouseEnter/MouseLeave events’ quirks, breaking the UI at times. The scrollbar also often “sticks” to the mouse, as described in this thread: https://devforum.roblox.com/t/toolbox-being-a-lua-widget/183801/

  1. Skyboxes are not parented to Lighting by default

This is a minor issue, but is a bit frustrating as we need to manually swap the skyboxes now (considering the previous behavior). This could be softened with a preview of how the skybox would look in the game before inserting it.

  1. You can no longer filter from creator

This is a much needed shortcut that sometimes saves a lot of time. For example, I might know who made something, but I don’t remember what that something is named.

I unfortunately can not rely on the search engine, so I find something else made by him, browse his assets and insert it from there - without even needing to open the browser and going to his inventory.

  1. The entire sets functionality is gone

This one is the most important, undoubtedly. Sets have been abandoned for the past six years and have never received attention from anyone, even though they could be one of the most useful tools available to a developer.

Analytics might not say the same, but it is because the average user can’t even access the sets page from any link on the website, nor add items to an existing set, nor subscribe to an existing one. You have to manually type the page in the address bar to access the interface.

They are an extremely handy tool for organizing assets and softkilling such a feature by completely hiding it from everyone is throwing its potential to waste.

I can not select my own sets, nor use other sets such as this one, this one or this one. I have to resort to either going model by model to add every single one of them to my inventory or attempt to use the search engine which hampers me even more.

Please reconsider adding them back.


Thanks for taking your time to read this. I know a lot of effort went into this and that it probably isn’t done yet, so I am giving my own feedback (and possibly lots of others’ too) in hope that these quirks get looked at so everyone’s developing experience can be improved once this goes out. A Lua Toolbox has lots of potential to be the greatest thing.

2 Likes

The MouseEnter/MouseLeave issue should be fixed now, thanks to @darthskrill.

5 Likes

Hey there, I was about to make a similar feature request but in attempt to keep the forums clean I will post my request here and just bump this thread, maybe we can get an update on the progress of these fixes? My largest request would be fixing the ability to use CTRL + A.

I love the idea of making the core functionality lua so the platform as a whole will increase in usability. Thanks.

  • Ben
2 Likes

I’m going to re-word my issues with the toolbox so that they hopefully can get addressed. I understand some of this might not be able to get addressed right away, but I hope they can be kept in mind in the long run:

  1. I wish the toolbox reacted a bit more. I’m not sure if this is possible with widgets, but right now the mouse icon doesn’t change or anything when hovering over buttons, text boxes, etc. This makes the toolbox feel unresponsive at first and it feels odd to navigate.

  2. The way items are inserted could be better. Right now everything is just inserted into workspace, and models don’t even go where I’m looking in the viewport anymore. As I mentioned originally, this hinders my workflow, especially with decals. I think inserted items should be made to go back to their original behavior where models move relative to the camera position, decals go inside of whatever is selected (and I don’t have to move my mouse over the viewport to add them to the game anymore), and skyboxes go into lighting.

And yeah I’m also experiencing basically every glitch mentioned in the original post as well as what @CodingLucas wrote. Please take this into consideration.

Original Stuff

Maybe I’m ignorant, but why did you guys ship this before adding those features?

Also, I just got this update over a month later and all those problems still exist. Here’s my issues:

  1. No feedback when I place my mouse over something. You used to have the toolbox objects like get bigger and your cursor would switch to a hand icon when hovering objects in the toolbox. Please bring something like that back because it feels unnatural to hover over something and not have anything happen. I don’t know if I should click the picture or the text or what to insert something.

  2. Inserting decals no longer goes into selection. Now they need to be placed on something in workspace to be added. I almost always use decals to grab an image ID, and having them be inserted into whatever I have selected (be it a script, gui object, or value object) was very convenient. Now I have to do another ungodly step to copy the ID since they will be placed on a random part in my viewport instead. If this cannot be added back, then please give us an easy way to get the image texture of a decal ASAP.

1 Like

This is just an outsider’s perspective, but text selection in the toolbox doesn’t seem like a major use case. There’s only one textbox, and it’s not meant for large amounts of text so clearing it with backspace isn’t too unreasonable. Text selection doesn’t seem like a huge blocker for the toolbox.

As for why even bother with the toolbox:

(one of these being plugins not being able to use the system cursor for your problem #1)

Once the Lua toolbox was completed, there wasn’t really a reason to not give it to developers, as text selection wasn’t a major blocker and the new toolbox didn’t decrease how often it was used

1 Like

It just feels incredibly rushed. I find it hard to believe they didn’t catch all of that. But I guess I see where they’re coming from.

It seems like you are noticing issues with the Toolbox and wondering why we released it before fixing these issues. We were fully aware of these issues and chose to ship anyway for a few reasons:

  • The severity of the bugs you observed is minor. For example, while it would be nice if you could select text within a TextBox, it is not something which severely impacts overall functionality. While we have someone working on improving text selection, it will likely not be released until sometime next year.
  • We were planning to release features which depend on the Toolbox, such as Packages. Waiting until all of the small bugs are fixed would mean we have to either delay the Packages release or implement the changes in the previous web implementation. Neither of these were good options

I encourage you to assume positive intent – we are not shipping things in a haphazard manner. We carefully evaluate all of the issues and make a logical decision, sometimes based on factors you are not aware of. Please give us the benefit of the doubt.

4 Likes

Forgive me if I came off as not giving you a benefit of the doubt. I know you all work hard and evaluate these decisions.

It’s just that after all these years of using the pre-widget toolbox, this one feels somewhat cheap. It seems a lot of functionality was lost purely so you could rush out an update. I get that these glitches are “minor”, but many of them seem to be completely possible to fix without having to delay other releases like packages (e.g. the skybox not parenting to lighting anymore).

I completely understand and agree that some functionality being lost is worth it in the long run so we can have awesome features faster. But right now the toolbox seems like a half-baked mess, and I think many issues could have been resolved in a timely manner before release, assuming you were aware of them.

I remain hopeful that you will take some of our feedback into consideration (which I’m sure you will) to make the widget toolbox another awesome feature. I’m glad the toolbox is finally getting some attention, I just don’t want some changes to interrupt my workflow so much. :slight_smile:

2 Likes