/*SPDX-FileCopyrightText: 2018 Tomaz Canabrava <tcanabrava@kde.org>SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL*/import QtQuickimport QtQuick.Layoutsimport QtQuick.Controls as QQC2import org.kde.kcmutils as KCMUtilsimport org.kde.kirigami as Kirigamiimport org.kde.plasma.access.kcmKirigami.FormLayout {QQC2.CheckBox {id: activationShortcutsKirigami.FormData.label: i18nc("@option:check", "Activation shortcuts:")text: i18nc("Enable activation shortcuts", "Enable")KCMUtils.SettingStateBinding {configObject: kcm.activationGesturesSettingssettingName: "Gestures"}checked: kcm.activationGesturesSettings.gesturesonToggled: kcm.activationGesturesSettings.gestures = checked}QQC2.Label {leftPadding: activationShortcuts.indicator.widthtext: i18nc("@label", "Press Shift 5 times to enable Sticky Keys")textFormat: Text.PlainTextelide: Text.ElideRightfont: Kirigami.Theme.smallFont}QQC2.Label {leftPadding: activationShortcuts.indicator.widthtext: i18nc("@label", "Hold Shift for 8 seconds to enable Slow Keys")textFormat: Text.PlainTextelide: Text.ElideRightfont: Kirigami.Theme.smallFont}RowLayout {spacing: Kirigami.Units.smallSpacingQQC2.CheckBox {text: i18nc("@option:check", "Disable sticky and slow keys after:")KCMUtils.SettingStateBinding {configObject: kcm.activationGesturesSettingssettingName: "AccessXTimeout"}checked: kcm.activationGesturesSettings.accessXTimeoutonToggled: kcm.activationGesturesSettings.accessXTimeout = checked}QQC2.SpinBox {id: spinboxKCMUtils.SettingStateBinding {configObject: kcm.activationGesturesSettingssettingName: "AccessXTimeoutDelay"extraEnabledConditions: kcm.activationGesturesSettings.accessXTimeout}from: 1to: 30textFromValue: (value, locale) => {return i18np("%1 min", "%1 min", value)}validator: IntValidatorWithSuffix {bottom: spinbox.fromtop: spinbox.to}valueFromText: (text, locale) => {return Number.fromLocaleString(locale, text.replace(i18ncp("short for minute(s)", "min", "min"), ""))}value: kcm.activationGesturesSettings.accessXTimeoutDelayonValueChanged: kcm.activationGesturesSettings.accessXTimeoutDelay = value}}QQC2.CheckBox {Kirigami.FormData.label: i18n("When a shortcut is used:")text: i18n("Display a confirmation dialog")KCMUtils.SettingStateBinding {configObject: kcm.activationGesturesSettingssettingName: "GestureConfirmation"}checked: kcm.activationGesturesSettings.gestureConfirmationonToggled: kcm.activationGesturesSettings.gestureConfirmation = checked}QQC2.CheckBox {text: i18n("Ring the system bell")KCMUtils.SettingStateBinding {configObject: kcm.activationGesturesSettingssettingName: "AccessXBeep"}checked: kcm.activationGesturesSettings.accessXBeeponToggled: kcm.activationGesturesSettings.accessXBeep = checked}QQC2.CheckBox {text: i18n("Show a notification")KCMUtils.SettingStateBinding {configObject: kcm.activationGesturesSettingssettingName: "KeyboardNotifyAccess"}checked: kcm.activationGesturesSettings.keyboardNotifyAccessonToggled: kcm.activationGesturesSettings.keyboardNotifyAccess = checked}QQC2.Button {text: i18n("Configure Notificationsβ¦")icon.name: "preferences-desktop-notification"onClicked: kcm.configureKNotify()}}