@@ -30,7 +30,6 @@ T.ComboBox {
3030 rightPadding: padding + (control .mirrored || ! indicator || ! indicator .visible ? 0 : indicator .width + spacing)
3131
3232 delegate: MenuItem {
33- implicitWidth: ListView .view .width
3433 useIndicatorPadding: true
3534 text: control .textRole ? (Array .isArray (control .model ) ? modelData[control .textRole ] : (model[control .textRole ] === undefined ? modelData[control .textRole ] : model[control .textRole ])) : modelData
3635 icon .name : (control .iconNameRole && model[control .iconNameRole ] !== undefined ) ? model[control .iconNameRole ] : null
@@ -103,8 +102,10 @@ T.ComboBox {
103102 }
104103
105104 T .TextField {
106- Layout .fillWidth : true
105+ Layout .fillWidth : ! control . flat
107106 Layout .fillHeight : true
107+ implicitWidth: control .flat ? contentWidth : implicitBackgroundWidth + leftInset + rightInset
108+ || contentWidth + leftPadding + rightPadding
108109 Layout .rightMargin : DS .Style .comboBox .spacing
109110 text: control .editable ? control .editText : control .displayText
110111
@@ -124,7 +125,8 @@ T.ComboBox {
124125 }
125126
126127 background: Item {
127- implicitWidth: DS .Style .comboBox .width
128+ implicitWidth: control .flat ? control .implicitContentWidth + control .leftPadding + control .rightPadding
129+ : DS .Style .comboBox .width
128130 implicitHeight: DS .Style .comboBox .height
129131 Loader {
130132 anchors .fill : parent
@@ -156,9 +158,12 @@ T.ComboBox {
156158 }
157159
158160 popup: Popup {
161+ leftMargin: DS .Style .popup .margin
162+ rightMargin: DS .Style .popup .margin
159163 palette: control .palette
160- implicitWidth: control .width
164+ implicitWidth: control .flat ? Math . max ( contentItem . implicitWidth , control . width ) : control . width
161165 contentItem: ArrowListView {
166+ id: arrowListView
162167 clip: true
163168 maxVisibleItems: control .maxVisibleItems
164169 view .model : control .delegateModel
0 commit comments