refactor: move tray items into own file
This commit is contained in:
parent
7c16c48b8c
commit
571f3312b2
2 changed files with 55 additions and 52 deletions
|
|
@ -1,11 +1,6 @@
|
|||
import "root:/widgets"
|
||||
import "root:/services"
|
||||
import "root:/config"
|
||||
import Quickshell
|
||||
import Quickshell.Widgets
|
||||
import Quickshell.Services.SystemTray
|
||||
import QtQuick
|
||||
import Qt5Compat.GraphicalEffects
|
||||
|
||||
StyledRect {
|
||||
animate: true
|
||||
|
|
@ -16,53 +11,7 @@ StyledRect {
|
|||
Repeater {
|
||||
model: SystemTray.items
|
||||
|
||||
MouseArea {
|
||||
id: item
|
||||
|
||||
required property SystemTrayItem modelData
|
||||
|
||||
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
||||
width: Appearance.font.size.smaller * 2
|
||||
height: Appearance.font.size.smaller * 2
|
||||
|
||||
onClicked: event => {
|
||||
if (event.button === Qt.LeftButton)
|
||||
modelData.activate();
|
||||
else if (modelData.hasMenu)
|
||||
menu.open();
|
||||
}
|
||||
|
||||
// TODO custom menu
|
||||
QsMenuAnchor {
|
||||
id: menu
|
||||
|
||||
menu: item.modelData.menu
|
||||
anchor.window: QsWindow.window
|
||||
}
|
||||
|
||||
IconImage {
|
||||
id: icon
|
||||
|
||||
visible: !BarConfig.tray.recolourIcons
|
||||
source: item.modelData.icon
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
ColorOverlay {
|
||||
visible: BarConfig.tray.recolourIcons
|
||||
anchors.fill: icon
|
||||
source: icon
|
||||
color: Appearance.colours.lavender
|
||||
|
||||
Behavior on color {
|
||||
ColorAnimation {
|
||||
duration: Appearance.anim.durations.normal
|
||||
easing.type: Easing.BezierSpline
|
||||
easing.bezierCurve: Appearance.anim.curves.standard
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
TrayItem {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
54
modules/bar/components/TrayItem.qml
Normal file
54
modules/bar/components/TrayItem.qml
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
import "root:/config"
|
||||
import Quickshell
|
||||
import Quickshell.Widgets
|
||||
import Quickshell.Services.SystemTray
|
||||
import QtQuick
|
||||
import Qt5Compat.GraphicalEffects
|
||||
|
||||
MouseArea {
|
||||
id: item
|
||||
|
||||
required property SystemTrayItem modelData
|
||||
|
||||
acceptedButtons: Qt.LeftButton | Qt.RightButton
|
||||
width: Appearance.font.size.smaller * 2
|
||||
height: Appearance.font.size.smaller * 2
|
||||
|
||||
onClicked: event => {
|
||||
if (event.button === Qt.LeftButton)
|
||||
modelData.activate();
|
||||
else if (modelData.hasMenu)
|
||||
menu.open();
|
||||
}
|
||||
|
||||
// TODO custom menu
|
||||
QsMenuAnchor {
|
||||
id: menu
|
||||
|
||||
menu: item.modelData.menu
|
||||
anchor.window: this.QsWindow.window
|
||||
}
|
||||
|
||||
IconImage {
|
||||
id: icon
|
||||
|
||||
visible: !BarConfig.tray.recolourIcons
|
||||
source: item.modelData.icon
|
||||
anchors.fill: parent
|
||||
}
|
||||
|
||||
ColorOverlay {
|
||||
visible: BarConfig.tray.recolourIcons
|
||||
anchors.fill: icon
|
||||
source: icon
|
||||
color: Appearance.colours.lavender
|
||||
|
||||
Behavior on color {
|
||||
ColorAnimation {
|
||||
duration: Appearance.anim.durations.normal
|
||||
easing.type: Easing.BezierSpline
|
||||
easing.bezierCurve: Appearance.anim.curves.standard
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue