From 50148c6fa19bb0af40a9ece8b8893ad621780745 Mon Sep 17 00:00:00 2001 From: J-P Nurmi Date: Fri, 30 Sep 2016 17:05:40 +0200 Subject: ComboBox: fix unintentional deps between the popup and its content item Do not use an ID to reference the default content item from the outside, because it should be possible to replace the content item. Change-Id: I8a6cc084fcb7eae431e4db7eeacb8fd2ab8c4bf5 Task-number: QTBUG-56297 Reviewed-by: J-P Nurmi --- src/imports/controls/ComboBox.qml | 3 ++- src/imports/controls/material/ComboBox.qml | 4 ++-- src/imports/controls/universal/ComboBox.qml | 4 ++-- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/imports/controls/ComboBox.qml b/src/imports/controls/ComboBox.qml index 01a6d2ab..5bffbb35 100644 --- a/src/imports/controls/ComboBox.qml +++ b/src/imports/controls/ComboBox.qml @@ -105,13 +105,14 @@ T.ComboBox { popup: T.Popup { y: control.height - (control.visualFocus ? 0 : 1) width: control.width - implicitHeight: listview.contentHeight + implicitHeight: contentItem.implicitHeight topMargin: 6 bottomMargin: 6 contentItem: ListView { id: listview clip: true + implicitHeight: contentHeight model: control.popup.visible ? control.delegateModel : null currentIndex: control.highlightedIndex diff --git a/src/imports/controls/material/ComboBox.qml b/src/imports/controls/material/ComboBox.qml index f13c6922..9d51f13b 100644 --- a/src/imports/controls/material/ComboBox.qml +++ b/src/imports/controls/material/ComboBox.qml @@ -114,7 +114,7 @@ T.ComboBox { popup: T.Popup { width: control.width - implicitHeight: listview.contentHeight + implicitHeight: contentItem.implicitHeight transformOrigin: Item.Top topMargin: 12 bottomMargin: 12 @@ -136,8 +136,8 @@ T.ComboBox { } contentItem: ListView { - id: listview clip: true + implicitHeight: contentHeight model: control.popup.visible ? control.delegateModel : null currentIndex: control.highlightedIndex diff --git a/src/imports/controls/universal/ComboBox.qml b/src/imports/controls/universal/ComboBox.qml index a8bf58f8..929232ab 100644 --- a/src/imports/controls/universal/ComboBox.qml +++ b/src/imports/controls/universal/ComboBox.qml @@ -108,7 +108,7 @@ T.ComboBox { popup: T.Popup { width: control.width - implicitHeight: Math.min(396, listview.contentHeight) + implicitHeight: Math.min(396, contentItem.implicitHeight) topMargin: 8 bottomMargin: 8 @@ -116,8 +116,8 @@ T.ComboBox { Universal.accent: control.Universal.accent contentItem: ListView { - id: listview clip: true + implicitHeight: contentHeight model: control.popup.visible ? control.delegateModel : null currentIndex: control.highlightedIndex -- cgit v1.2.3