diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc
index c1938e2971b0c9f47024f12108ebd978e8ad9ea0..4801189b02696cc76f7ef873a60ff2ee9295900b 100644
--- a/qgroundcontrol.qrc
+++ b/qgroundcontrol.qrc
@@ -65,6 +65,7 @@
src/QmlControls/QGCFlickableHorizontalIndicator.qml
src/QmlControls/QGCFlickableVerticalIndicator.qml
src/QmlControls/QGCLabel.qml
+ src/QmlControls/QGCListView.qml
src/QmlControls/QGCMobileFileDialog.qml
src/QmlControls/QGCMovableItem.qml
src/QmlControls/QGCPipable.qml
diff --git a/src/MissionEditor/MissionEditor.qml b/src/MissionEditor/MissionEditor.qml
index 6b3faeaafbc861f44d16a10d5b6a033eadd210e1..3c82b84184d3fb34b08b3b67df93177a3b42c19b 100644
--- a/src/MissionEditor/MissionEditor.qml
+++ b/src/MissionEditor/MissionEditor.qml
@@ -732,7 +732,7 @@ QGCView {
onWheel: wheel.accepted = true
}
- ListView {
+ QGCListView {
id: missionItemEditorListView
anchors.left: parent.left
anchors.right: parent.right
@@ -766,7 +766,7 @@ QGCView {
onMoveHomeToMapCenter: _visualItems.get(0).coordinate = editorMap.center
}
- } // ListView
+ } // QGCListView
} // Item - Mission Item editor
// GeoFence Editor
diff --git a/src/MissionEditor/MissionItemStatus.qml b/src/MissionEditor/MissionItemStatus.qml
index 9777157df18d1c800ee7baa9c4fcbc84b8e60f98..b90c796fbad0d093500a5ebd2bafc51ddf23bbb8 100644
--- a/src/MissionEditor/MissionItemStatus.qml
+++ b/src/MissionEditor/MissionItemStatus.qml
@@ -111,7 +111,7 @@ Rectangle {
QGCLabel { text: _azimuthText }
}
- ListView {
+ QGCListView {
id: statusListView
model: missionItems
highlightMoveDuration: 250
diff --git a/src/QmlControls/AppMessages.qml b/src/QmlControls/AppMessages.qml
index f851faaf9ae5a3d7c37db8d7961402bd1a3a0f00..de919c5511c3751bb779377ee399b4c20383d650 100644
--- a/src/QmlControls/AppMessages.qml
+++ b/src/QmlControls/AppMessages.qml
@@ -96,7 +96,7 @@ QGCView {
}
}
- ListView {
+ QGCListView {
Component.onCompleted: {
loaded = true
}
diff --git a/src/QmlControls/MissionCommandDialog.qml b/src/QmlControls/MissionCommandDialog.qml
index 48f5454babbcde18e78ca4814826f2423c354ca8..1a8503ecffb74b2c3b32d26bb211f17dc6211d95 100644
--- a/src/QmlControls/MissionCommandDialog.qml
+++ b/src/QmlControls/MissionCommandDialog.qml
@@ -51,7 +51,7 @@ QGCViewDialog {
onActivated: categorySelected(textAt(index))
}
- ListView {
+ QGCListView {
id: commandList
anchors.margins: ScreenTools.defaultFontPixelHeight
anchors.left: parent.left
@@ -101,5 +101,5 @@ QGCViewDialog {
}
}
}
- } // ListView
+ } // QGCListView
} // QGCViewDialog
diff --git a/src/QmlControls/ParameterEditor.qml b/src/QmlControls/ParameterEditor.qml
index b1e72301d522b1e1254535c7f2c89dfd7f27e622..050aa21a54d1b8f21b1ec1c91e2fb5b9a62c4023 100644
--- a/src/QmlControls/ParameterEditor.qml
+++ b/src/QmlControls/ParameterEditor.qml
@@ -180,7 +180,7 @@ QGCView {
}
/// Parameter list
- ListView {
+ QGCListView {
id: editorListView
anchors.leftMargin: ScreenTools.defaultFontPixelWidth
anchors.left: _searchFilter ? parent.left : groupScroll.right
diff --git a/src/QmlControls/QGCFlickable.qml b/src/QmlControls/QGCFlickable.qml
index 52b1b0c44ec4608aee91356dcf10a1d793f68ef4..80a7e034677d70a3cc84575b3b4f57b67d2354af 100644
--- a/src/QmlControls/QGCFlickable.qml
+++ b/src/QmlControls/QGCFlickable.qml
@@ -1,8 +1,8 @@
-import QtQuick 2.5
+import QtQuick 2.5
-import QGroundControl.Palette 1.0
-import QGroundControl.ScreenTools 1.0
+import QGroundControl.Palette 1.0
+/// QGC version of Flickable control that shows horizontal/vertial scroll indicators
Flickable {
id: root
boundsBehavior: Flickable.StopAtBounds
diff --git a/src/QmlControls/QGCListView.qml b/src/QmlControls/QGCListView.qml
new file mode 100644
index 0000000000000000000000000000000000000000..3c5205a9eacaf2de079e9363f3ab858cbc5c6bf0
--- /dev/null
+++ b/src/QmlControls/QGCListView.qml
@@ -0,0 +1,20 @@
+import QtQuick 2.5
+
+import QGroundControl.Palette 1.0
+
+/// QGC version of ListVIew control that shows horizontal/vertial scroll indicators
+ListView {
+ id: root
+ boundsBehavior: Flickable.StopAtBounds
+
+ property color indicatorColor: qgcPal.text
+
+ QGCPalette { id: qgcPal; colorGroupEnabled: enabled }
+
+ Component.onCompleted: {
+ var indicatorComponent = Qt.createComponent("QGCFlickableVerticalIndicator.qml")
+ indicatorComponent.createObject(root)
+ indicatorComponent = Qt.createComponent("QGCFlickableHorizontalIndicator.qml")
+ indicatorComponent.createObject(root)
+ }
+}
diff --git a/src/QmlControls/QGCMobileFileDialog.qml b/src/QmlControls/QGCMobileFileDialog.qml
index 91928a84fe086028efabd36226c5bcc531ddfc59..99b48a41df62d2ce633617c9a243b0e5fd06ceb0 100644
--- a/src/QmlControls/QGCMobileFileDialog.qml
+++ b/src/QmlControls/QGCMobileFileDialog.qml
@@ -96,7 +96,7 @@ QGCViewDialog {
anchors.margins: _margins
anchors.fill: parent
- ListView {
+ QGCListView {
anchors.fill: parent
spacing: _margins / 2
orientation: ListView.Vertical
diff --git a/src/QmlControls/QGroundControl.Controls.qmldir b/src/QmlControls/QGroundControl.Controls.qmldir
index 5334f916da04b82e6514e2094703854a5290f2f3..8392f8abe5010b2b5f8d96a5a0b6bd39a004d084 100644
--- a/src/QmlControls/QGroundControl.Controls.qmldir
+++ b/src/QmlControls/QGroundControl.Controls.qmldir
@@ -27,6 +27,7 @@ QGCColoredImage 1.0 QGCColoredImage.qml
QGCComboBox 1.0 QGCComboBox.qml
QGCFlickable 1.0 QGCFlickable.qml
QGCLabel 1.0 QGCLabel.qml
+QGCListView 1.0 QGCListView.qml
QGCMobileFileDialog 1.0 QGCMobileFileDialog.qml
QGCMovableItem 1.0 QGCMovableItem.qml
QGCPipable 1.0 QGCPipable.qml
diff --git a/src/ui/preferences/MavlinkSettings.qml b/src/ui/preferences/MavlinkSettings.qml
index 8cec2eb598df86b8a0d7301ba39cd305d699da38..b33f1e718716daa13acff1407770305ce1c3ba49 100644
--- a/src/ui/preferences/MavlinkSettings.qml
+++ b/src/ui/preferences/MavlinkSettings.qml
@@ -340,7 +340,7 @@ Rectangle {
color: qgcPal.window
border.color: qgcPal.text
border.width: 0.5
- ListView {
+ QGCListView {
width: ScreenTools.defaultFontPixelWidth * 56
height: ScreenTools.defaultFontPixelHeight * 12
anchors.centerIn: parent