Search Unity

Question EditorGUILayout.ColorField inside a BeginScrollView causes GUI Error!

Discussion in 'Editor & General Support' started by SpookyCat, May 9, 2023.

  1. SpookyCat

    SpookyCat

    Joined:
    Jan 25, 2010
    Posts:
    3,765
    I have a simple EditorWindow which has the GUI elements drawn inside an EditorGUILayout.BeginScrollView, all works fine but if you click a EditorGUILayout.ColorField control the console gets the error:
    Code (CSharp):
    1. GUI Error: You are pushing more GUIClips than you are popping. Make sure they are balanced.
    2. UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
    Is there a way to stop this from happening?

    So this does not give an error:
    Code (CSharp):
    1.             EditorGUILayout.ColorField("Tint", layer.tint);
    2.             scroll = EditorGUILayout.BeginScrollView(scroll);
    3.             EditorGUILayout.EndScrollView();
    But this does:
    Code (CSharp):
    1.             scroll = EditorGUILayout.BeginScrollView(scroll);
    2.             EditorGUILayout.ColorField("Tint", layer.tint);
    3.             EditorGUILayout.EndScrollView();
    4.