mirror of
https://github.com/penpot/penpot.git
synced 2025-07-13 12:57:16 +02:00
🐛 Fix problem with margin in flex layout
This commit is contained in:
parent
ac6a814026
commit
afec3b9bc1
1 changed files with 10 additions and 4 deletions
|
@ -541,23 +541,29 @@ fn child_position(
|
|||
child_axis: &ChildAxis,
|
||||
track: &TrackData,
|
||||
) -> Point {
|
||||
let across_position = match child.layout_item {
|
||||
let across_position = match child.layout_item {
|
||||
Some(LayoutItem {
|
||||
align_self: Some(align_self),
|
||||
..
|
||||
}) => match align_self {
|
||||
AlignSelf::Center => (track.across_size - child_axis.across_size) / 2.0,
|
||||
AlignSelf::End => track.across_size - child_axis.across_size - child_axis.margin_across_end,
|
||||
AlignSelf::End => {
|
||||
track.across_size - child_axis.across_size - child_axis.margin_across_end
|
||||
}
|
||||
_ => child_axis.margin_across_start,
|
||||
},
|
||||
_ => match layout_data.align_items {
|
||||
AlignItems::Center => (track.across_size - child_axis.across_size) / 2.0,
|
||||
AlignItems::End => track.across_size - child_axis.across_size - child_axis.margin_across_end,
|
||||
AlignItems::End => {
|
||||
track.across_size - child_axis.across_size - child_axis.margin_across_end
|
||||
}
|
||||
_ => child_axis.margin_across_start,
|
||||
},
|
||||
};
|
||||
|
||||
shape_anchor + layout_axis.main_v * child_axis.margin_main_start + layout_axis.across_v * across_position
|
||||
shape_anchor
|
||||
+ layout_axis.main_v * child_axis.margin_main_start
|
||||
+ layout_axis.across_v * across_position
|
||||
}
|
||||
|
||||
pub fn reflow_flex_layout(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue