mirror of
https://github.com/Ellpeck/MLEM.git
synced 2024-11-22 12:58:33 +01:00
Fixed auto-navigating panels not scrolling to the center of elements properly
This commit is contained in:
parent
96f0c51757
commit
0f4e67f20f
2 changed files with 4 additions and 3 deletions
|
@ -53,6 +53,7 @@ Improvements
|
||||||
Fixes
|
Fixes
|
||||||
- Fixed paragraph links having incorrect hover locations when using special text alignments
|
- Fixed paragraph links having incorrect hover locations when using special text alignments
|
||||||
- Fixed the graphics device's viewport being ignored for mouse and touch queries
|
- Fixed the graphics device's viewport being ignored for mouse and touch queries
|
||||||
|
- Fixed auto-navigating panels not scrolling to the center of elements properly
|
||||||
|
|
||||||
Removals
|
Removals
|
||||||
- Marked StyleProp equality members as obsolete
|
- Marked StyleProp equality members as obsolete
|
||||||
|
|
|
@ -79,13 +79,13 @@ namespace MLEM.Ui.Elements {
|
||||||
};
|
};
|
||||||
|
|
||||||
// handle automatic element selection, the scroller needs to scroll to the right location
|
// handle automatic element selection, the scroller needs to scroll to the right location
|
||||||
this.OnSelectedElementChanged += (element, otherElement) => {
|
this.OnSelectedElementChanged += (_, e) => {
|
||||||
if (!this.Controls.IsAutoNavMode)
|
if (!this.Controls.IsAutoNavMode)
|
||||||
return;
|
return;
|
||||||
if (otherElement == null || !otherElement.GetParentTree().Contains(this))
|
if (e == null || !e.GetParentTree().Contains(this))
|
||||||
return;
|
return;
|
||||||
var firstChild = this.Children.First(c => c != this.ScrollBar);
|
var firstChild = this.Children.First(c => c != this.ScrollBar);
|
||||||
this.ScrollBar.CurrentValue = (otherElement.Area.Bottom - firstChild.Area.Top - this.Area.Height / 2) / this.Scale;
|
this.ScrollBar.CurrentValue = (e.UnscrolledArea.Center.Y - firstChild.Area.Height - this.Area.Height / 2) / e.Scale + this.ChildPadding.Value.Height;
|
||||||
};
|
};
|
||||||
this.AddChild(this.ScrollBar);
|
this.AddChild(this.ScrollBar);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue