[NUI] Fix RelativeLayout's descendant size and position calculations
authorJaehyun Cho <jae_hyun.cho@samsung.com>
Mon, 7 Jun 2021 13:02:25 +0000 (22:02 +0900)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Mon, 14 Jun 2021 10:12:19 +0000 (19:12 +0900)
commit1acbf8c24046849fbbc8a0462d763e31bebebf0a
tree78baa273a0bf497502d83d3838208c2086b5ddba
parent023a30bf0976d0a24f8f2037c12b83e2258b5e22
[NUI] Fix RelativeLayout's descendant size and position calculations

Previously, 2 descendant sizes and positions calculation problems
exitsted on RelativeLayout as follows.

1. MatchParent grand children's sizes and positions were not calculated.
 - RelativeLayout set its children's sizes and positions but it did not
   set its children's MeasuredWidth/Height.
 - If children's MeasuredWidth/Height are not set, then the MatchParent
   grand children's sizes and positions are not calculated.

2. MatchParent children's sizes fill to the RelativeLayout by default.
 - MatchParent children's sizes should not fill to the RelativeLayout by
   default because children's sizes and positions should be calculated
   by RelativeLayout's APIs.

Now, the above problems have been fixed as follows.

1. RelativeLayout sets its children's MeasuredWidth/Height, so its
   MatchParent grand children's sizes and positions are calculated
   correctly.

2. MatchParent children's sizes are calculated by RelativeLayout's APIs.
src/Tizen.NUI/src/public/Layouting/LinearLayout.cs
src/Tizen.NUI/src/public/Layouting/RelativeLayout.cs