diff --git a/nymea-app/resources.qrc b/nymea-app/resources.qrc
index 59991134..e9bc6136 100644
--- a/nymea-app/resources.qrc
+++ b/nymea-app/resources.qrc
@@ -320,5 +320,6 @@
ui/devicepages/DeviceDetailsPage.qml
ui/system/WirelessNetworksFilterSettingsPage.qml
ui/system/ServerLoggingCategoriesPage.qml
+ ui/components/BackgroundFocusHandler.qml
diff --git a/nymea-app/ui/components/BackgroundFocusHandler.qml b/nymea-app/ui/components/BackgroundFocusHandler.qml
new file mode 100644
index 00000000..2ed089a3
--- /dev/null
+++ b/nymea-app/ui/components/BackgroundFocusHandler.qml
@@ -0,0 +1,8 @@
+import QtQuick 2.9
+
+MouseArea {
+ onClicked: {
+ forceActiveFocus()
+ Qt.inputMethod.hide()
+ }
+}
diff --git a/nymea-app/ui/components/NymeaTextField.qml b/nymea-app/ui/components/NymeaTextField.qml
index 556e8a3f..37133b1e 100644
--- a/nymea-app/ui/components/NymeaTextField.qml
+++ b/nymea-app/ui/components/NymeaTextField.qml
@@ -8,6 +8,11 @@ TextField {
property bool error: false
+ onEditingFinished: {
+ activeFocus = false
+ parent.forceActiveFocus()
+ }
+
background: Rectangle {
y: control.height - height - control.bottomPadding + 8
implicitWidth: 120
diff --git a/nymea-app/ui/components/SettingsPageBase.qml b/nymea-app/ui/components/SettingsPageBase.qml
index 7329f977..32e80c8c 100644
--- a/nymea-app/ui/components/SettingsPageBase.qml
+++ b/nymea-app/ui/components/SettingsPageBase.qml
@@ -45,6 +45,8 @@ Page {
property alias busy: busyOverlay.shown
property alias busyText: busyOverlay.text
+ BackgroundFocusHandler { anchors.fill: parent }
+
Flickable {
id: flickable
anchors.fill: parent
diff --git a/nymea-app/ui/thingconfiguration/NewThingPage.qml b/nymea-app/ui/thingconfiguration/NewThingPage.qml
index df188a0a..48e50fdf 100644
--- a/nymea-app/ui/thingconfiguration/NewThingPage.qml
+++ b/nymea-app/ui/thingconfiguration/NewThingPage.qml
@@ -58,6 +58,8 @@ Page {
})
}
+ BackgroundFocusHandler { anchors.fill: parent }
+
ColumnLayout {
anchors.fill: parent
@@ -160,10 +162,10 @@ Page {
delegate: NymeaItemDelegate {
id: tingClassDelegate
- width: parent.width
+ width: listView.width
text: model.displayName
subText: engine.thingManager.vendors.getVendor(model.vendorId).displayName
- iconName: app.interfacesToIcon(thingClass.interfaces)
+ iconName: thingClass.interfaces ? app.interfacesToIcon(thingClass.interfaces) : ""
prominentSubText: false
wrapTexts: false
@@ -197,5 +199,4 @@ Page {
}
}
}
-
}
diff --git a/packaging/android/build.gradle b/packaging/android/build.gradle
index 24fe2e09..d839e54a 100644
--- a/packaging/android/build.gradle
+++ b/packaging/android/build.gradle
@@ -46,6 +46,8 @@ dependencies {
implementation 'com.google.firebase:firebase-messaging:22.0.0'
implementation 'com.google.firebase.messaging.cpp:firebase_messaging_cpp@aar'
}
+
+ constraints.implementation 'androidx.fragment:fragment:1.8.6'
}
if ("${useFirebase}" == "true") {
diff --git a/shared.pri b/shared.pri
index 3f1d1a0f..ba3d9ee9 100644
--- a/shared.pri
+++ b/shared.pri
@@ -33,6 +33,7 @@ linux:!android {
android: {
QMAKE_CXXFLAGS += -Wno-deprecated-declarations
+ QMAKE_LFLAGS *= "-Wl,-z,max-page-size=16384"
ANDROID_PACKAGE_SOURCE_DIR = $${PACKAGE_BASE_DIR}/android
message("Android package directory: $${ANDROID_PACKAGE_SOURCE_DIR}")
diff --git a/version.txt b/version.txt
index 0e7d6c47..645f687b 100644
--- a/version.txt
+++ b/version.txt
@@ -1,2 +1,2 @@
1.10.2
-658
+662