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
- Standard Unity Materials and Shaders become corrupted after importing specific Asset Packages
- [Linux][OpenGL][Vulkan] Draw calls are not shown in the Event List when taking a capture of a frame with RenderDoc
- Inaccurate collision detections when Rigidbody Collision Detection is set to "Continuous" or "Continuous Dynamic"
- Crash on Object::IncrementPersistentDirtyIndex when upgrading project version
- [iOS] Multiple Xcode project instances created before opens up when performing Build and Run for iOS Platform
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 += () => {};