Studio Design Refresh - Docking Overhaul & Ribbon Upgrade

I wasn’t around in 2017 but man I wish you could still do that in case something like this happens again.

1 Like

Major improvements since this update’s initial release! However, there are still some issues to be resolved on Roblox Studio for MacOS.


  1. Adding Two Widgets in the “Floating” state to a single combined widget that is also in the “Floating” state causes Roblox Studio to crash after some time

  2. Closing a widget via pressing the “Close” button on the dropdown that appears when a user presses the down arrow at the top of any widget does not fire the function bound by the :BindToClose() method

1 Like

Thanks! I’ll get this in front of the team.

2 Likes

I did some more investigating and it seems the handles for the “Move” and “Rotate” tool cause Roblox Studio to drop frames on MacOS. I have left the video demoing this bug as well as the code to reproduce the :BindToClose() bug.


Handle Lag


:BindToClose() Bug

local newButton = plugin:CreateToolbar("BindToClose Error"):CreateButton("Open Widget", "Opens a Widget", "")
local newWidget = plugin:CreateDockWidgetPluginGui(math.random(),
	DockWidgetPluginGuiInfo.new(
		Enum.InitialDockState.Float,
		true,
		true,
		100,
		100,
		100,
		100
	)
)

newButton.Click:Connect(function()
	newWidget.Enabled = not newWidget.Enabled
end)

newWidget:BindToClose(function()
	print("Closed!")
end)

Thanks for the additional info. We do have a ticket for :BindToClose() based on your original post. I’ll forward the dragging issue to our Builder Tools folks.

1 Like

One thing really bugging me at the minute is the complete inability to dock a window below another in their default positions. I’ve always used the standard explorer and properties layout and moved the properties by mistake, only to find I can’t put it back whatsoever. Why is the default layout not supported under the new docking system, and can we expect it to be fixed?


(The bottom position it is trying to get me to dock it in covers the entire bottom of the screen, which isn’t what I want)

1 Like

I’m confused, what exactly are you wanting it to do? I personally haven’t had any issues with the update and all those docking positions work exactly as I expect

1 Like

For as long as I’ve used studio the properties window has been properly docked underneath the explorer, it’s how it was when I installed studio and I just got used to it and never changed it.
It should be docked like this, but that seems to be impossible now.
image

1 Like

I don’t have any problems doing that, I’ll have to try what you mean when I get home see if I run into any issues

2 Likes

That’s possible. Just drag the window to the bottom overlay section.

1 Like

As I showed in the video above that isn’t working. Whether it’s just me managing to break everything I touch or a bug I don’t know.
If there’s a trick I’m missing and you’re supposed to do something other than just drag it over the bottom of the window you want to dock it under I’d appreciate any tips.

(I’ve pretty meticulously gone over the entire window hoping to get it to notice what I’m trying to do to no avail)

1 Like

I might be a little late, but here’s something:


(I needed to capture my whole monitor to display the docking overlay. I apologize for the resolution of the video.)

Anyways, this is how it should dock. Does it work for you?


Also, why is RobloxStudio making its clone?
image
I rarely experience these issues, but it doesn’t seem to do anything.

2 Likes

Unfortunately not but at least that confirms that it’s just my install, thanks. I’ll do a fresh install later and I’ll try to get repro steps if it happens again.

1 Like

Seems like the docking/refresh update also broke some of the plugin widget features. They no longer initialize with the size in DockWidgetPluginGuiInfo and instead just automatically dock and undock on creation (even when initDockState is set to float), effectively making all widgets the same size regardless of what floatXSize and floatYSize you specify.

This is a major issue for plugin developers who use widgets since they won’t be able to control/manage the size of the widget in order to properly scale a plugin GUI

1 Like

I have recently encountered a few old and new issues with widgets. Some of the issues are likely due to the platform i’m using, which is MacOS 13.2.1.

  • Grouping 2+ widgets together causes Roblox Studio to crash immediately.


  • Creating more than a single widget under the same plugin global causes only one widget to correctly restore.
    This issue can be replicated by repeatedly saving the code below as a local plugin and simultaneously showing, hiding, and resizing the widgets to simulate a user enabling/disabling a plugin.

    local newButton = plugin:CreateToolbar("Test"):CreateButton("Open Widget", "", "")
    
    local newWidget1 = plugin:CreateDockWidgetPluginGui("3565624553",
    	DockWidgetPluginGuiInfo.new(
    		Enum.InitialDockState.Float,
    		true,
    		false,
    		500,
    		500,
    		500,
    		500
    	)
    )
    
    local newWidget2 = plugin:CreateDockWidgetPluginGui("980456234",
    	DockWidgetPluginGuiInfo.new(
    		Enum.InitialDockState.Float,
    		true,
    		false,
    		500,
    		500,
    		500,
    		500
    	)
    )
    
    newButton.Click:Connect(function()
    	newWidget1.Enabled = true
    	newWidget2.Enabled = true
    end)
    

  • Changing the InitialEnabledShouldOverrideRestore perameter of DockWidgetPluginGuiInfo to true when it was false before does not apply.
    Change the InitialEnabledShouldOverrideRestore parameter to true after attempting to replicate the bug above.

2 Likes

For a few months I’ve been consistently having problems where studio softlocks itself from window docking issues. When it works, I really enjoy the new functionality, however, currently the instability is making it very frustrating to use studio.


Studio has to be fully restarted when this happens, this really sucks when you’re working on a games that take forever to load.

I don’t know if it is related to this but the Find All / Replace All has a 30% chance of fully crashing studio when clicking a result. This behavior started the same time the docking softlocking did.

RobloxStudioBeta_vgGrGOD3vq

1 Like

I’ve found that you just need to:

1 Like

Hey, I don’t know if you will see this or not due to how much time has passed since but shortly after this comment I managed to figure out why it wasn’t working, I was trying to move my widgets the old fashioned way instead of putting them in the tiles at the centre of the screen haha! My bad

2 Likes

I’m having a problem where windows docked to the bottom of the screen where output and script analysis usually are kept cannot be resized and shrink themselves to the point they end up off screen.
This happens when I have a script docked where the game render is shown.
I believe this is to do with some weird minimum window size constraint which just increases to some unreasonable levels - I cannot see more than 5 lines of output at best, at worst the bottom docking is completely hidden from view.

This was an issue introduced earlier this week with a Multi Cursor flag. The flag has been turned off today but it takes little time to go through our automatic testing.

1 Like