mobile/UI: improve layout of styled ComboBox and TextField

This makes the TextFields (and the editable ComboBoxes with them) have a
tighter visual experience.

It also moves the indicater closer to the right edge in the ComboBox and
doesn't use preferredWidth for the slim combo box as that implies a
maximum width which could lead to unnecessary clipping.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Dirk Hohndel 2021-01-15 12:27:58 -08:00
parent 9aa660e06e
commit 74bb2c49bf
3 changed files with 27 additions and 2 deletions

View file

@ -6,10 +6,12 @@ import org.kde.kirigami 2.4 as Kirigami
ComboBox {
id: cb
editable: false
Layout.fillWidth: true
Layout.preferredHeight: Kirigami.Units.gridUnit * 2.5
Layout.preferredHeight: Kirigami.Units.gridUnit * 2.0
inputMethodHints: Qt.ImhNoPredictiveText
font.pointSize: subsurfaceTheme.regularPointSize
rightPadding: Kirigami.Units.smallSpacing
property var flickable // used to ensure the combobox is visible on screen
delegate: ItemDelegate {
width: cb.width
@ -49,6 +51,7 @@ ComboBox {
}
contentItem: SsrfTextField {
inComboBox: cb.editable
readOnly: !cb.editable
anchors.right: indicator.left
anchors.left: cb.left
@ -59,6 +62,7 @@ ComboBox {
font: cb.font
color: subsurfaceTheme.textColor
verticalAlignment: Text.AlignVCenter
onPressed: {
if (readOnly) {
if (cb.popup.opened) {