This was originally going to be an email to the mono winforms list, but it got too long, and people won't read long emails, so I'm putting it here instead. The following really applies to people working inside the mono winforms assembly, not consumers of it, but someone may find it interesting. Recently I made a pretty fundamental change to the way SetBoundsCore (and bounds setting in general). Because it seemed to go very smoothly and only broke a few easily fixable cases, I didn't really alert people the way I should have. Everaldo found a case I missed, and there's probably more, so it's important that everyone knows what the change was and how it may affect them. SetBoundsCore looks like this: void SetBoundsCore(int x, int y, int width, int height, BoundsSpecified specified) where BoundsSpecified contains things like X, Y, Location, Width, Height, Size, All, None. The old understanding of how this worked, and the way mono implemented it, was that the BoundsS...