Simplify Widget ContentSize cascade change algorithm

This PR removed all the redundant calling of  `onSizeChanged` method,
Since we have already called it at the end of `setContentSize` method in Widget class.
And also I added some tests to verify this refactor code.