LayoutGroup checks in the CalculateLayoutInputHorizontal() call it the component has an ILayoutIgnorer
Component, and then proceeds to check the ignoreLayout
value of it to see if it should add or ignore the gameObject. The problem is that it doesn’t check if the ILayoutIgnorer
Component is actually enabled == true
So the issue is that if you change the “Ignore Layout” value of a disabled component, it will affect the layout.
And ( connected with that ) interface ILayoutIgnorer
is missing a bool enabled { get; }
field to add the check