Warning, /multimedia/haruna/src/qml/Settings/ShortcutsSettings.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 * SPDX-FileCopyrightText: 2022 George Florea Bănuș <georgefb899@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-3.0-or-later 0005 */ 0006 0007 import QtQml 0008 import QtQuick 0009 import QtQuick.Layouts 0010 import QtQuick.Controls 0011 import QtQuick.Dialogs 0012 0013 import org.kde.kirigami as Kirigami 0014 import org.kde.kquickcontrols 0015 import org.kde.haruna 0016 0017 SettingsBasePage { 0018 id: root 0019 0020 hasHelp: false 0021 helpFile: "" 0022 0023 onVisibleChanged: { 0024 if (!visible) { 0025 proxyActionsModel.setNameFilter("") 0026 } 0027 } 0028 0029 header: ToolBar { 0030 width: parent.width 0031 0032 RowLayout { 0033 anchors.fill: parent 0034 0035 Kirigami.SearchField { 0036 id: searchField 0037 0038 focus: true 0039 onAccepted: proxyActionsModel.setNameFilter(text) 0040 Layout.fillWidth: true 0041 KeyNavigation.up: actionsListView 0042 KeyNavigation.down: actionsListView 0043 Component.onCompleted: forceActiveFocus() 0044 } 0045 } 0046 } 0047 ListView { 0048 id: actionsListView 0049 0050 model: proxyActionsModel 0051 0052 delegate: ItemDelegate { 0053 width: actionsListView.width 0054 0055 contentItem: RowLayout { 0056 Kirigami.IconTitleSubtitle { 0057 title: model.text 0058 icon.name: model.icon 0059 0060 Layout.fillWidth: true 0061 } 0062 0063 KeySequenceItem { 0064 checkForConflictsAgainst: ShortcutType.None 0065 modifierlessAllowed: true 0066 keySequence: model.shortcut 0067 0068 onKeySequenceChanged: { 0069 if (keySequence !== model.shortcut) { 0070 if (!proxyActionsModel.saveShortcut(model.index, keySequence)) { 0071 keySequence = model.shortcut 0072 } 0073 } 0074 } 0075 } 0076 } 0077 } 0078 KeyNavigation.down: searchField 0079 KeyNavigation.up: searchField 0080 Keys.onPressed: { 0081 if (event.key === Qt.Key_End) { 0082 actionsListView.currentIndex = actionsListView.count - 1 0083 actionsListView.positionViewAtIndex(actionsListView.currentIndex,ListView.Center) 0084 } 0085 if (event.key === Qt.Key_Home) { 0086 actionsListView.currentIndex = 0 0087 actionsListView.positionViewAtIndex(actionsListView.currentIndex,ListView.Center) 0088 } 0089 } 0090 } 0091 }