diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2020-12-30 14:18:32 -0800 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2021-01-01 11:35:39 -0800 |
commit | 7ed32e3a49900153fb2e6517a863e13deebb6b71 (patch) | |
tree | 8787e07cc30fe1f57f04a3bff3b8a249b097fd64 | |
parent | f503e5a9c2f8056192faca4f2e1e7ad00d6293c7 (diff) | |
download | subsurface-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>
-rw-r--r-- | mobile-widgets/qml/DiveDetailsEdit.qml | 9 | ||||
-rw-r--r-- | mobile-widgets/qml/TemplateComboBox.qml | 4 |
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 |