/*SPDX-FileCopyrightText: 2024 Joshua Goins <joshua.goins@kdab.com>SPDX-License-Identifier: GPL-2.0-or-later*/import QtQuickimport QtQuick.Layoutsimport QtQuick.Controls as QQC2import org.kde.kirigami as Kirigamiimport org.kde.plasma.tablet.kcm as KCMimport org.kde.kcmutilsimport org.kde.kquickcontrolsQQC2.Button {id: rootrequired property string nameproperty KCM.inputSequence inputSequenceproperty bool supportsPenButton: trueproperty bool supportsRelativeEvents: falsesignal gotInputSequence(sequence: KCM.inputSequence)icon.name: {switch (inputSequence.type) {case KCM.InputSequence.Disabled:return "action-unavailable-symbolic";case KCM.InputSequence.Keyboard:return "input-keyboard-symbolic";case KCM.InputSequence.Mouse:return "input-mouse-symbolic";case KCM.InputSequence.Pen:return "tool_pen-symbolic";case KCM.InputSequence.Scroll:return "input-mouse-click-middle";case KCM.InputSequence.ApplicationDefined:return "applications-all-symbolic";}}text: inputSequence.toString()function moveUpSequence(sequence: KCM.inputSequence): void {root.gotInputSequence(sequence);actionDialog.gotInputSequence.disconnect(moveUpSequence);}function clearSignals(): void {actionDialog.closed.disconnect(clearSignals);actionDialog.gotInputSequence.disconnect(moveUpSequence);}onClicked: {actionDialog.name = name;actionDialog.inputSequence = inputSequence;actionDialog.supportsPenButton = supportsPenButton;actionDialog.supportsRelativeEvents = supportsRelativeEvents;actionDialog.closed.connect(clearSignals);actionDialog.gotInputSequence.connect(moveUpSequence);actionDialog.open();actionDialog.refreshDialogData();}}