I have two issues
1) Onresize triggers when it shouldn't (works fine in 2.2.6)
2) The value from "height/ClientHeight" is fluctuating when it shouldn't (works fine in 2.2.6)
The onresize is triggered because internally the SetBounds get called multiple times with different sizes.
SetBounds is called when you do a move.
Normally when SetBounds is called with the same size, the onResize isn't called.
But if the size is different for both calls, it sees it as a resize, thus calling OnResize.
I think that's also the reason you get different ClientHeight, because for the first call, the height is different from the second.
Haven't found the reason why the SetBound is called twice for a WM_MOVE.