applets/systemtray: support arrow key navigation

wilder-5.26
Fushan Wen 4 years ago
parent 890ce08b10
commit dd5027d448
No known key found for this signature in database
GPG Key ID: 2E48D1487C91DCAA
  1. 18
      applets/systemtray/package/contents/ui/ExpandedRepresentation.qml
  2. 3
      applets/systemtray/package/contents/ui/HiddenItemsView.qml

@ -63,6 +63,9 @@ Item {
display: PlasmaComponents.AbstractButton.IconOnly
text: i18nc("@action:button", "Go Back")
KeyNavigation.down: hiddenItemsView.visible ? hiddenLayout : container
KeyNavigation.right: actionsButton.visible ? actionsButton : actionsButton.KeyNavigation.right
onClicked: systemTrayState.setActiveApplet(null)
}
@ -91,6 +94,10 @@ Item {
Accessible.role: actionsButton.singleAction ? Accessible.Button : Accessible.ButtonMenu
KeyNavigation.down: backButton.KeyNavigation.down
KeyNavigation.left: backButton
KeyNavigation.right: configureButton.visible ? configureButton : configureButton.KeyNavigation.right
// NOTE: it needs an IconItem because QtQuickControls2 buttons cannot load QIcons as their icon
PlasmaCore.IconItem {
parent: actionsButton
@ -147,12 +154,17 @@ Item {
}
}
PlasmaComponents.ToolButton {
id: configureButton
icon.name: "configure"
visible: actionsButton.applet && actionsButton.applet.action("configure")
display: PlasmaComponents.AbstractButton.IconOnly
text: actionsButton.applet.action("configure").text
KeyNavigation.down: backButton.KeyNavigation.down
KeyNavigation.left: actionsButton.visible ? actionsButton : actionsButton.KeyNavigation.left
KeyNavigation.right: pinButton
PlasmaComponents.ToolTip {
text: parent.visible ? parent.text : ""
}
@ -169,6 +181,9 @@ Item {
display: PlasmaComponents.AbstractButton.IconOnly
text: i18n("Keep Open")
KeyNavigation.down: backButton.KeyNavigation.down
KeyNavigation.left: configureButton.visible ? configureButton : configureButton.KeyNavigation.left
PlasmaComponents.ToolTip {
text: parent.text
}
@ -182,6 +197,9 @@ Item {
Layout.fillHeight: true
Layout.topMargin: PlasmaCore.Units.smallSpacing
visible: !systemTrayState.activeApplet
KeyNavigation.up: pinButton
onVisibleChanged: {
if (visible) {
layout.forceActiveFocus();

@ -77,6 +77,9 @@ PlasmaComponents3.ScrollView {
keyNavigationEnabled: true
activeFocusOnTab: true
KeyNavigation.up: hiddenTasksView.KeyNavigation.up
onActiveFocusChanged: {
if (activeFocus && currentIndex === -1) {
currentIndex = 0

Loading…
Cancel
Save