mirror of
https://gitee.com/openharmony/arkui_ace_engine
synced 2025-02-04 01:10:11 +00:00
!14950 【外置ScrollBar】修复外置滚动条测算时未考虑padding的问题
Merge pull request !14950 from 张荣杰/0613
This commit is contained in:
commit
b4d36b0fc1
@ -71,6 +71,9 @@ void ScrollBarLayoutAlgorithm::Measure(LayoutWrapper* layoutWrapper)
|
||||
auto constraint = layoutProperty->GetLayoutConstraint();
|
||||
auto idealSize = CreateIdealSize(constraint.value(), axis, MeasureType::MATCH_CONTENT);
|
||||
auto parentSize = CreateIdealSize(constraint.value(), axis, MeasureType::MATCH_PARENT);
|
||||
auto padding = layoutProperty->CreatePaddingAndBorder();
|
||||
MinusPaddingToSize(padding, idealSize);
|
||||
MinusPaddingToSize(padding, parentSize);
|
||||
|
||||
// Calculate child layout constraint.
|
||||
auto childLayoutConstraint = layoutProperty->CreateChildConstraint();
|
||||
@ -84,6 +87,7 @@ void ScrollBarLayoutAlgorithm::Measure(LayoutWrapper* layoutWrapper)
|
||||
// Use child size when self idea size of scroll is not setted.
|
||||
auto childSize = childWrapper->GetGeometryNode()->GetMarginFrameSize();
|
||||
UpdateIdealSize(axis, childSize, parentSize, idealSize);
|
||||
AddPaddingToSize(padding, idealSize);
|
||||
auto selfSize = idealSize.ConvertToSizeT();
|
||||
selfSize.Constrain(constraint->minSize, constraint->maxSize);
|
||||
layoutWrapper->GetGeometryNode()->SetFrameSize(selfSize);
|
||||
|
Loading…
x
Reference in New Issue
Block a user