From 1ec02cb54e3083e726a5e4b745aa46527fa5a496 Mon Sep 17 00:00:00 2001 From: 2 * r + 2 * t <61896496+soramanew@users.noreply.github.com> Date: Fri, 2 May 2025 22:23:15 +1000 Subject: launcher: list item interactivity --- widgets/StateLayer.qml | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 widgets/StateLayer.qml (limited to 'widgets/StateLayer.qml') diff --git a/widgets/StateLayer.qml b/widgets/StateLayer.qml new file mode 100644 index 0000000..e1a7b61 --- /dev/null +++ b/widgets/StateLayer.qml @@ -0,0 +1,45 @@ +import "root:/widgets" +import "root:/config" +import QtQuick + +Rectangle { + id: root + + function onClicked(event: MouseEvent): void { + } + + anchors.fill: parent + + color: Appearance.colours.m3onSurface + opacity: mouse.pressed ? 0.1 : mouse.hovered ? 0.08 : 0 + + MouseArea { + id: mouse + + property bool hovered + + anchors.fill: parent + hoverEnabled: true + + onEntered: hovered = true + onExited: hovered = false + + onClicked: event => root.onClicked(event) + } + + Behavior on opacity { + NumberAnimation { + duration: Appearance.anim.durations.smaller + easing.type: Easing.BezierSpline + easing.bezierCurve: Appearance.anim.curves.standard + } + } + + Behavior on color { + ColorAnimation { + duration: Appearance.anim.durations.normal + easing.type: Easing.BezierSpline + easing.bezierCurve: Appearance.anim.curves.standard + } + } +} -- cgit v1.2.3-freya