rojo-rbx / rojo

Rojo enables Roblox developers to use professional-grade software engineering tools
https://rojo.space
Mozilla Public License 2.0
947 stars 179 forks source link

Use GUIDs for ephemeral PluginWidgets #784

Closed boatbomber closed 1 year ago

boatbomber commented 1 year ago

Because Roact will destroy and recreate a plugin widget if it unmounts and remounts, Studio will complain about making a new widget with the same ID as the old one.

The simplest solution is to just use GUIDs so we never have to worry about this again. The ID is used internally for storing the widget's dock state and other internal details, so we don't want all our widgets to use GUIDs, only the ephemeral popup ones.