virtualkeyboard-kcm: Port to FormCard

This commit is contained in:
Carl Schwan 2023-09-21 21:12:47 +02:00
parent c864d9f5e1
commit 595db85a04
No known key found for this signature in database
GPG key ID: 02325448204E452A

View file

@ -12,7 +12,7 @@ import QtQuick.Controls 2.11 as QQC2
import org.kde.kirigami 2.19 as Kirigami import org.kde.kirigami 2.19 as Kirigami
import org.kde.kcmutils as KCM import org.kde.kcmutils as KCM
import org.kde.kitemmodels 1.0 as KItemModel import org.kde.kitemmodels 1.0 as KItemModel
import org.kde.kirigamiaddons.labs.mobileform 0.1 as MobileForm import org.kde.kirigamiaddons.formcard 1.0 as FormCard
KCM.SimpleKCM { KCM.SimpleKCM {
id: root id: root
@ -21,129 +21,105 @@ KCM.SimpleKCM {
leftPadding: 0 leftPadding: 0
rightPadding: 0 rightPadding: 0
topPadding: Kirigami.Units.gridUnit topPadding: 0
bottomPadding: Kirigami.Units.gridUnit bottomPadding: Kirigami.Units.gridUnit
ColumnLayout { ColumnLayout {
spacing: 0 spacing: 0
width: parent.width width: parent.width
MobileForm.FormCard { FormCard.FormCard {
Layout.fillWidth: true Layout.topMargin: Kirigami.Units.gridUnit
contentItem: ColumnLayout { FormCard.FormTextFieldDelegate {
spacing: 0 label: i18n("Type anything here…")
MobileForm.AbstractFormDelegate {
Layout.fillWidth: true
background: Item {}
contentItem: RowLayout {
QQC2.TextField {
Layout.fillWidth: true
placeholderText: i18n("Type anything here…")
}
}
}
} }
} }
MobileForm.FormCard { FormCard.FormHeader {
Layout.topMargin: Kirigami.Units.gridUnit title: i18nc("@title:group", "Feedback")
Layout.fillWidth: true }
contentItem: ColumnLayout { FormCard.FormCard {
spacing: 0 FormCard.FormSwitchDelegate {
id: firstFeedbackCheckBox
text: i18n("Sound")
description: i18n("Whether to emit a sound on keypress.")
checked: kcm.soundFeedback
onCheckedChanged: kcm.soundFeedback = checked;
}
MobileForm.FormCardHeader { FormCard.FormDelegateSeparator { above: firstFeedbackCheckBox; below: secondFeedbackCheckBox }
title: "Feedback"
}
MobileForm.FormSwitchDelegate { FormCard.FormSwitchDelegate {
id: firstFeedbackCheckBox id: secondFeedbackCheckBox
text: i18n("Sound") text: i18n("Vibration")
description: i18n("Whether to emit a sound on keypress.") description: i18n("Whether to vibrate on keypress.")
checked: kcm.soundFeedback checked: kcm.vibrateFeedback
onCheckedChanged: kcm.soundFeedback = checked; onCheckedChanged: kcm.vibrateFeedback = checked;
}
MobileForm.FormDelegateSeparator { above: firstFeedbackCheckBox; below: secondFeedbackCheckBox }
MobileForm.FormSwitchDelegate {
id: secondFeedbackCheckBox
text: i18n("Vibration")
description: i18n("Whether to vibrate on keypress.")
checked: kcm.vibrateFeedback
onCheckedChanged: kcm.vibrateFeedback = checked;
}
} }
} }
MobileForm.FormCard { FormCard.FormHeader {
Layout.topMargin: Kirigami.Units.gridUnit title: i18nc("@title:group", "Text Correction")
Layout.fillWidth: true }
contentItem: ColumnLayout { FormCard.FormCard {
spacing: 0
MobileForm.FormCardHeader { FormCard.FormCheckDelegate {
title: "Text Correction" id: firstTextCorrectionCheckBox
text: i18n("Check spelling of entered text")
checked: kcm.spellCheck
onCheckedChanged: kcm.spellCheck = checked;
}
FormCard.FormDelegateSeparator { above: firstTextCorrectionCheckBox; below: capitalizeCheck }
FormCard.FormCheckDelegate {
id: capitalizeCheck
text: i18n("Capitalize the first letter of each sentence")
checked: kcm.autoCapitalize
onCheckedChanged: kcm.autoCapitalize = checked;
}
FormCard.FormDelegateSeparator { above: capitalizeCheck; below: wordCompletionCheck }
FormCard.FormCheckDelegate {
id: wordCompletionCheck
text: i18n("Complete current word with first suggestion when hitting space")
checked: kcm.autoCompleteOnSpace
onCheckedChanged: kcm.autoCompleteOnSpace = checked;
}
FormCard.FormDelegateSeparator { above: wordCompletionCheck; below: wordSuggestionCheck }
FormCard.FormCheckDelegate {
id: wordSuggestionCheck
text: i18n("Suggest potential words in word ribbon")
checked: kcm.showSuggestions
onCheckedChanged: {
kcm.showSuggestions = checked;
} }
}
MobileForm.FormCheckDelegate { FormCard.FormDelegateSeparator { above: wordSuggestionCheck; below: fullStopCheck }
id: firstTextCorrectionCheckBox
text: i18n("Check spelling of entered text") FormCard.FormCheckDelegate {
checked: kcm.spellCheck id: fullStopCheck
onCheckedChanged: kcm.spellCheck = checked; text: i18n("Insert a full-stop when space is pressed twice")
checked: kcm.fullStopOnDoubleSpace
onCheckedChanged: {
kcm.fullStopOnDoubleSpace = checked;
} }
}
MobileForm.FormDelegateSeparator { above: firstTextCorrectionCheckBox; below: capitalizeCheck } FormCard.FormDelegateSeparator { above: fullStopCheck; below: languageButton }
MobileForm.FormCheckDelegate { FormCard.FormButtonDelegate {
id: capitalizeCheck id: languageButton
text: i18n("Capitalize the first letter of each sentence") text: i18n("Configure Languages")
checked: kcm.autoCapitalize icon.name: "set-language"
onCheckedChanged: kcm.autoCapitalize = checked; onClicked: kcm.push("languages.qml")
}
MobileForm.FormDelegateSeparator { above: capitalizeCheck; below: wordCompletionCheck }
MobileForm.FormCheckDelegate {
id: wordCompletionCheck
text: i18n("Complete current word with first suggestion when hitting space")
checked: kcm.autoCompleteOnSpace
onCheckedChanged: kcm.autoCompleteOnSpace = checked;
}
MobileForm.FormDelegateSeparator { above: wordCompletionCheck; below: wordSuggestionCheck }
MobileForm.FormCheckDelegate {
id: wordSuggestionCheck
text: i18n("Suggest potential words in word ribbon")
checked: kcm.showSuggestions
onCheckedChanged: {
kcm.showSuggestions = checked;
}
}
MobileForm.FormDelegateSeparator { above: wordSuggestionCheck; below: fullStopCheck }
MobileForm.FormCheckDelegate {
id: fullStopCheck
text: i18n("Insert a full-stop when space is pressed twice")
checked: kcm.fullStopOnDoubleSpace
onCheckedChanged: {
kcm.fullStopOnDoubleSpace = checked;
}
}
MobileForm.FormDelegateSeparator { above: fullStopCheck; below: languageButton }
MobileForm.FormButtonDelegate {
id: languageButton
text: i18n("Configure Languages")
icon.name: "set-language"
onClicked: kcm.push("languages.qml")
}
} }
} }
} }