diff --git a/qgroundcontrol.qrc b/qgroundcontrol.qrc index def0440d0bc4fef86500ef9161746a4191fa5301..41746308ebcaaec15d5471a653191164089ce474 100644 --- a/qgroundcontrol.qrc +++ b/qgroundcontrol.qrc @@ -85,6 +85,7 @@ src/QmlControls/QGCMapLabel.qml src/QmlControls/QGCMobileFileOpenDialog.qml src/QmlControls/QGCMobileFileSaveDialog.qml + src/QmlControls/QGCMouseArea.qml src/QmlControls/QGCMovableItem.qml src/QmlControls/QGCPipable.qml src/QmlControls/QGCRadioButton.qml diff --git a/src/QmlControls/QGCMouseArea.qml b/src/QmlControls/QGCMouseArea.qml new file mode 100644 index 0000000000000000000000000000000000000000..aba03c37430eb82295b70527d077bb63d782b755 --- /dev/null +++ b/src/QmlControls/QGCMouseArea.qml @@ -0,0 +1,12 @@ +import QtQuick 2.3 + +import QGroundControl 1.0 + +MouseArea { + Rectangle { + anchors.fill: parent + border.color: "red" + border.width: QGroundControl.showTouchAreas ? 1 : 0 + color: "transparent" + } +} diff --git a/src/QmlControls/QGroundControl.Controls.qmldir b/src/QmlControls/QGroundControl.Controls.qmldir index 8426dc4e0b4ce5c6b67c5aad80632778b42838d2..dd491b5f439c46ea30f69a73230ea211a8bffccd 100644 --- a/src/QmlControls/QGroundControl.Controls.qmldir +++ b/src/QmlControls/QGroundControl.Controls.qmldir @@ -37,6 +37,7 @@ QGCListView 1.0 QGCListView.qml QGCMapLabel 1.0 QGCMapLabel.qml QGCMobileFileOpenDialog 1.0 QGCMobileFileOpenDialog.qml QGCMobileFileSaveDialog 1.0 QGCMobileFileSaveDialog.qml +QGCMouseArea 1.0 QGCMouseArea.qml QGCMovableItem 1.0 QGCMovableItem.qml QGCPipable 1.0 QGCPipable.qml QGCRadioButton 1.0 QGCRadioButton.qml diff --git a/src/QmlControls/ScreenTools.qml b/src/QmlControls/ScreenTools.qml index 84fa4b7c20046d7fb3cc229dcc5b7c6c7f7b51fc..c2085e45b756592b3340c9a27bc34e34bb767663 100644 --- a/src/QmlControls/ScreenTools.qml +++ b/src/QmlControls/ScreenTools.qml @@ -60,6 +60,9 @@ Item { property bool isTinyScreen: (Screen.width / Screen.pixelDensity) < 120 // 120mm property bool isShortScreen: ScreenToolsController.isMobile && ((Screen.height / Screen.width) < 0.6) // Nexus 7 for example + readonly property real minTouchMillimeters: 10 ///< Minimum touch size in millimeters + property real minTouchPixels: 0 ///< Minimum touch size in pixels + // The implicit heights/widths for our custom control set property real implicitButtonWidth: Math.round(defaultFontPixelWidth * (isMobile ? 7.0 : 5.0)) property real implicitButtonHeight: Math.round(defaultFontPixelHeight * (isMobile ? 2.0 : 1.6)) @@ -101,7 +104,8 @@ Item { smallFontPointSize = defaultFontPointSize * _screenTools.smallFontPointRatio mediumFontPointSize = defaultFontPointSize * _screenTools.mediumFontPointRatio largeFontPointSize = defaultFontPointSize * _screenTools.largeFontPointRatio - toolbarHeight = defaultFontPixelHeight * 3 * QGroundControl.corePlugin.options.toolbarHeightMultiplier + minTouchPixels = Math.round(minTouchMillimeters * Screen.pixelDensity) + toolbarHeight = isMobile ? minTouchPixels : defaultFontPixelHeight * 3 } Text {