Build the Panama Hyprland desktop
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
// Month-stepping arrow in CalendarGrid's header. A round hover target sized
|
||||
// like GNOME's calendar arrows rather than a bare glyph, so it reads as a
|
||||
// button before the pointer is anywhere near it.
|
||||
|
||||
import QtQuick
|
||||
import qs.config
|
||||
|
||||
Rectangle {
|
||||
id: root
|
||||
|
||||
signal activated
|
||||
|
||||
required property string glyph
|
||||
|
||||
implicitWidth: 26
|
||||
implicitHeight: 26
|
||||
radius: width / 2
|
||||
border.width: 0
|
||||
color: mouse.containsMouse ? Theme.alpha(Theme.fg, Theme.hoverAlpha) : "transparent"
|
||||
|
||||
// Fast in, relaxed out — the arrow answers the pointer, so arriving should
|
||||
// feel immediate and leaving should not snap.
|
||||
Behavior on color {
|
||||
ColorAnimation {
|
||||
duration: mouse.containsMouse ? Theme.durFast : Theme.durNormal
|
||||
}
|
||||
}
|
||||
|
||||
Text {
|
||||
anchors.centerIn: parent
|
||||
text: root.glyph
|
||||
// fontMono is the Nerd Font: used here to draw an icon, never text.
|
||||
font.family: Theme.fontMono
|
||||
font.pixelSize: Theme.fontSize
|
||||
color: mouse.containsMouse ? Theme.fg : Theme.fgDim
|
||||
}
|
||||
|
||||
MouseArea {
|
||||
id: mouse
|
||||
anchors.fill: parent
|
||||
hoverEnabled: true
|
||||
cursorShape: Qt.PointingHandCursor
|
||||
onClicked: root.activated()
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user