aboutsummaryrefslogtreecommitdiffstats
path: root/mobile-widgets/qml
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2020-12-30 14:18:32 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2021-01-01 11:35:39 -0800
commit7ed32e3a49900153fb2e6517a863e13deebb6b71 (patch)
tree8787e07cc30fe1f57f04a3bff3b8a249b097fd64 /mobile-widgets/qml
parentf503e5a9c2f8056192faca4f2e1e7ad00d6293c7 (diff)
downloadsubsurface-7ed32e3a49900153fb2e6517a863e13deebb6b71.tar.gz
mobile/UI: ensure active input field stays visible
This reuses the logic we implemented in the SsrfTextField. Eventually we will need to clean up the inconsistent names for these elements. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'mobile-widgets/qml')
-rw-r--r--mobile-widgets/qml/DiveDetailsEdit.qml9
-rw-r--r--mobile-widgets/qml/TemplateComboBox.qml4
2 files changed, 12 insertions, 1 deletions
diff --git a/mobile-widgets/qml/DiveDetailsEdit.qml b/mobile-widgets/qml/DiveDetailsEdit.qml
index 1736282f3..f4550b3b4 100644
--- a/mobile-widgets/qml/DiveDetailsEdit.qml
+++ b/mobile-widgets/qml/DiveDetailsEdit.qml
@@ -164,6 +164,7 @@ Item {
}
TemplateEditComboBox {
id: locationBox
+ flickable: detailsEditFlickable
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
manager.locationList : null
onAccepted: {
@@ -253,6 +254,7 @@ Item {
}
TemplateEditComboBox {
id: suitBox
+ flickable: detailsEditFlickable
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
manager.suitList : null
}
@@ -263,6 +265,7 @@ Item {
}
TemplateEditComboBox {
id: buddyBox
+ flickable: detailsEditFlickable
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
manager.buddyList : null
}
@@ -273,6 +276,7 @@ Item {
}
TemplateEditComboBox {
id: divemasterBox
+ flickable: detailsEditFlickable
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
manager.divemasterList : null
}
@@ -295,6 +299,7 @@ Item {
}
TemplateComboBox {
id: cylinderBox0
+ flickable: detailsEditFlickable
flat: true
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
diveDetailsListView.currentItem.modelData.cylinderList : null
@@ -344,6 +349,7 @@ Item {
TemplateComboBox {
visible: usedCyl[1] != null ? true : false
id: cylinderBox1
+ flickable: detailsEditFlickable
flat: true
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
diveDetailsListView.currentItem.modelData.cylinderList : null
@@ -399,6 +405,7 @@ Item {
TemplateComboBox {
visible: usedCyl[2] != null ? true : false
id: cylinderBox2
+ flickable: detailsEditFlickable
currentIndex: find(usedCyl[2])
flat: true
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
@@ -454,6 +461,7 @@ Item {
TemplateComboBox {
visible: usedCyl[3] != null ? true : false
id: cylinderBox3
+ flickable: detailsEditFlickable
currentIndex: find(usedCyl[3])
flat: true
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
@@ -510,6 +518,7 @@ Item {
TemplateComboBox {
visible: usedCyl[4] != null ? true : false
id: cylinderBox4
+ flickable: detailsEditFlickable
currentIndex: find(usedCyl[4])
flat: true
model: diveDetailsListView.currentItem && diveDetailsListView.currentItem.modelData !== null ?
diff --git a/mobile-widgets/qml/TemplateComboBox.qml b/mobile-widgets/qml/TemplateComboBox.qml
index 4d5844a88..f56fcf129 100644
--- a/mobile-widgets/qml/TemplateComboBox.qml
+++ b/mobile-widgets/qml/TemplateComboBox.qml
@@ -10,6 +10,7 @@ ComboBox {
Layout.preferredHeight: Kirigami.Units.gridUnit * 2.5
inputMethodHints: Qt.ImhNoPredictiveText
font.pointSize: subsurfaceTheme.regularPointSize
+ property var flickable // used to ensure the combobox is visible on screen
delegate: ItemDelegate {
width: cb.width
contentItem: Text {
@@ -47,10 +48,11 @@ ComboBox {
}
}
- contentItem: TextField {
+ contentItem: SsrfTextField {
readOnly: !cb.editable
anchors.right: indicator.left
anchors.left: cb.left
+ flickable: cb.flickable
leftPadding: Kirigami.Units.smallSpacing
rightPadding: Kirigami.Units.smallSpacing
text: readOnly ? cb.displayText : cb.editText