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

