Search Issue Tracker
Fixed in 2020.1.X
Votes
0
Found in
2019.2.0a7
2019.2.10f1
2019.3
2020.1
Issue ID
1193566
Regression
Yes
Clicking on the Layouts button causes "Menu Window/Layouts couldn't be found" error with specific scripts in the project
Reproduction steps:
1. Open "LayoutButtonBug" project
2. Click on the "Layout" button
Expected Result: Layout drop-down appears
Actual Result: "Menu Window/Layouts couldn't be found"
Reproduced with: 2020.1.0a9, 2019.3.0b8, 2019.2.10f1, 2019.2.0b1, 2019.2.0a7
Did not reproduce on: 2019.2.0a6, 2019.2.0a1, 2019.1.14f1, 2018.4.12f1, 2017.4.33f1
-
unity_4tsblackcat
Sep 16, 2022 19:43
Regression on 2022.1.15f1 after having to reinstall the editor, and resolving TxtMesh Pro packages. Search for 'EditorApplication.delayCall' assignments turned up nothing in the Assets folder.
-
Renea
Apr 28, 2020 20:01
What script does that change need to be made in. I did a search on my whole solution and didn't find that line.
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- [Silicon] Crash with multiple StackTraces when entering Play Mode in a project with corrupted FBX files
- Index Out Of Range exception when trying to use Rendering Layer Override in Probe Adjustment Volume without a mask defined in lighting settings
- [Android] [Vulkan] [WebCamTexture] "WebCamTexture.Play" crashes the application when the camera is started
- Huge performance overheads appear when there is a large amount of bindings in the UI Toolkit
- Visual Effects Graph Blackboard can't be scrolled horizontally
Resolution Note (fix version 2020.1):
The reason for the issue is because the code was incorrectly assigning a lambda function to "EditorApplication.delayCall", which was messing all our internal uses and preventing the Layouts menu to be properly populated.
What the fix does is change the type of "EditorApplication.delayCall" from "delegate" to the more appropriate type "event". This prevents users from incorrectly assigning directly to it. So the user will have to change his code from:
EditorApplication.delayCall = () => {};
to
EditorApplication.delayCall += () => {};