Improve focus handling on iOS

This commit is contained in:
Simon Stürz 2025-05-21 10:22:18 +02:00
parent 465e200810
commit 65079f998f
8 changed files with 24 additions and 4 deletions

View File

@ -320,5 +320,6 @@
<file>ui/devicepages/DeviceDetailsPage.qml</file> <file>ui/devicepages/DeviceDetailsPage.qml</file>
<file>ui/system/WirelessNetworksFilterSettingsPage.qml</file> <file>ui/system/WirelessNetworksFilterSettingsPage.qml</file>
<file>ui/system/ServerLoggingCategoriesPage.qml</file> <file>ui/system/ServerLoggingCategoriesPage.qml</file>
<file>ui/components/BackgroundFocusHandler.qml</file>
</qresource> </qresource>
</RCC> </RCC>

View File

@ -0,0 +1,8 @@
import QtQuick 2.9
MouseArea {
onClicked: {
forceActiveFocus()
Qt.inputMethod.hide()
}
}

View File

@ -8,6 +8,11 @@ TextField {
property bool error: false property bool error: false
onEditingFinished: {
activeFocus = false
parent.forceActiveFocus()
}
background: Rectangle { background: Rectangle {
y: control.height - height - control.bottomPadding + 8 y: control.height - height - control.bottomPadding + 8
implicitWidth: 120 implicitWidth: 120

View File

@ -45,6 +45,8 @@ Page {
property alias busy: busyOverlay.shown property alias busy: busyOverlay.shown
property alias busyText: busyOverlay.text property alias busyText: busyOverlay.text
BackgroundFocusHandler { anchors.fill: parent }
Flickable { Flickable {
id: flickable id: flickable
anchors.fill: parent anchors.fill: parent

View File

@ -58,6 +58,8 @@ Page {
}) })
} }
BackgroundFocusHandler { anchors.fill: parent }
ColumnLayout { ColumnLayout {
anchors.fill: parent anchors.fill: parent
@ -160,10 +162,10 @@ Page {
delegate: NymeaItemDelegate { delegate: NymeaItemDelegate {
id: tingClassDelegate id: tingClassDelegate
width: parent.width width: listView.width
text: model.displayName text: model.displayName
subText: engine.thingManager.vendors.getVendor(model.vendorId).displayName subText: engine.thingManager.vendors.getVendor(model.vendorId).displayName
iconName: app.interfacesToIcon(thingClass.interfaces) iconName: thingClass.interfaces ? app.interfacesToIcon(thingClass.interfaces) : ""
prominentSubText: false prominentSubText: false
wrapTexts: false wrapTexts: false
@ -197,5 +199,4 @@ Page {
} }
} }
} }
} }

View File

@ -46,6 +46,8 @@ dependencies {
implementation 'com.google.firebase:firebase-messaging:22.0.0' implementation 'com.google.firebase:firebase-messaging:22.0.0'
implementation 'com.google.firebase.messaging.cpp:firebase_messaging_cpp@aar' implementation 'com.google.firebase.messaging.cpp:firebase_messaging_cpp@aar'
} }
constraints.implementation 'androidx.fragment:fragment:1.8.6'
} }
if ("${useFirebase}" == "true") { if ("${useFirebase}" == "true") {

View File

@ -33,6 +33,7 @@ linux:!android {
android: { android: {
QMAKE_CXXFLAGS += -Wno-deprecated-declarations QMAKE_CXXFLAGS += -Wno-deprecated-declarations
QMAKE_LFLAGS *= "-Wl,-z,max-page-size=16384"
ANDROID_PACKAGE_SOURCE_DIR = $${PACKAGE_BASE_DIR}/android ANDROID_PACKAGE_SOURCE_DIR = $${PACKAGE_BASE_DIR}/android
message("Android package directory: $${ANDROID_PACKAGE_SOURCE_DIR}") message("Android package directory: $${ANDROID_PACKAGE_SOURCE_DIR}")

View File

@ -1,2 +1,2 @@
1.10.2 1.10.2
658 662