Fix scrollbar for object selector

This commit is contained in:
Jaime van Kessel 2019-09-18 17:05:00 +02:00
parent 549eb21a5a
commit cc65bc8213
No known key found for this signature in database
GPG key ID: 3710727397403C91
2 changed files with 27 additions and 39 deletions

View file

@ -447,7 +447,6 @@ UM.MainWindow
target: Cura.Actions.addProfile
onTriggered:
{
preferences.show();
preferences.setPage(4);
// Create a new profile after a very short delay so the preference page has time to initiate

View file

@ -78,7 +78,7 @@ Item
id: contents
width: parent.width
visible: objectSelector.opened
height: visible ? scroll.height : 0
height: visible ? listView.height : 0
color: UM.Theme.getColor("main_background")
border.width: UM.Theme.getSize("default_lining").width
border.color: UM.Theme.getColor("lining")
@ -87,36 +87,26 @@ Item
anchors.bottom: parent.bottom
ScrollView
{
id: scroll
width: parent.width
clip: true
padding: UM.Theme.getSize("default_lining").width
contentItem: ListView
ListView
{
id: listView
clip: true
anchors
{
left: parent.left
right: parent.right
margins: UM.Theme.getSize("default_lining").width
}
ScrollBar.vertical: ScrollBar
{
hoverEnabled: true
}
// Can't use parent.width since the parent is the flickable component and not the ScrollView
width: scroll.width - scroll.leftPadding - scroll.rightPadding
property real maximumHeight: UM.Theme.getSize("objects_menu_size").height
// We use an extra property here, since we only want to to be informed about the content size changes.
onContentHeightChanged:
{
// It can sometimes happen that (due to animations / updates) the contentHeight is -1.
// This can cause a bunch of updates to trigger oneother, leading to a weird loop.
if(contentHeight >= 0)
{
scroll.height = Math.min(contentHeight, maximumHeight) + scroll.topPadding + scroll.bottomPadding
}
}
height: Math.min(contentHeight, maximumHeight)
Component.onCompleted:
{
scroll.height = Math.min(contentHeight, maximumHeight) + scroll.topPadding + scroll.bottomPadding
}
model: Cura.ObjectsModel {}
delegate: ObjectItemButton
@ -134,4 +124,3 @@ Item
}
}
}
}