aboutsummaryrefslogtreecommitdiffstats
path: root/config/quickshell/modules/common/Appearance.qml
diff options
context:
space:
mode:
authorJa.KooLit <85185940+JaKooLit@users.noreply.github.com>2025-07-15 19:48:59 +0900
committerGitHub <noreply@github.com>2025-07-15 19:48:59 +0900
commit30f73308e232b49cfb30dc8015b315ea24e6b80c (patch)
tree69e8b1f219b2638d3119c70aea870730d7dae105 /config/quickshell/modules/common/Appearance.qml
parentccc57814f5b72f5481d5ea7fe4de4958dc80f553 (diff)
parentd3a59bcfac1f24b0f44e4bc798a59ac494bfedeb (diff)
Merge pull request #762 from JaKooLit/dev-quickshell
Merging Dev-quickshell to development
Diffstat (limited to 'config/quickshell/modules/common/Appearance.qml')
-rw-r--r--config/quickshell/modules/common/Appearance.qml201
1 files changed, 201 insertions, 0 deletions
diff --git a/config/quickshell/modules/common/Appearance.qml b/config/quickshell/modules/common/Appearance.qml
new file mode 100644
index 00000000..675f1d1e
--- /dev/null
+++ b/config/quickshell/modules/common/Appearance.qml
@@ -0,0 +1,201 @@
+import QtQuick
+import Quickshell
+import "root:/modules/common/functions/color_utils.js" as ColorUtils
+pragma Singleton
+pragma ComponentBehavior: Bound
+
+
+Singleton {
+ id: root
+ property QtObject m3colors
+ property QtObject animation
+ property QtObject animationCurves
+ property QtObject colors
+ property QtObject rounding
+ property QtObject font
+ property QtObject sizes
+
+ property real transparency: 0.5
+ property real contentTransparency: 0.1
+ property real workpaceTransparency: 0.8
+ property string background_image: Directories.config + "/rofi/.current_wallpaper"
+
+ m3colors: QtObject {
+ property bool darkmode: true
+ property bool transparent: true
+
+ property color m3windowBackground: "#161217"
+ property color m3primaryText: "#EAE0E7"
+ property color m3layerBackground1: "#1F1A1F"
+ property color m3layerBackground2: "#231E23"
+ property color m3layerBackground3: "#2D282E"
+ property color m3surfaceText: "#EAE0E7"
+ property color m3secondaryText: "#CFC3CD"
+ property color m3borderPrimary: "#cba6f7"
+ property color m3shadowColor: "#000000"
+ property color m3accentPrimary: "#E5B6F2"
+ property color m3accentSecondary: "#D5C0D7"
+ property color m3selectionBackground: "#534457"
+ property color m3accentPrimaryText: "#452152"
+ property color m3selectionText: "#F2DCF3"
+ property color m3borderSecondary: "#4C444D"
+
+ property color colTooltip: "#1e1e2e"
+ property color colOnTooltip: "#F8F9FA"
+ }
+
+ colors: QtObject {
+ property color colSubtext: m3colors.m3borderPrimary
+ property color colLayer0: ColorUtils.transparentize(m3colors.m3windowBackground, root.transparency)
+ property color colLayer1: ColorUtils.transparentize(ColorUtils.mix(m3colors.m3layerBackground1, m3colors.m3windowBackground, 0.7), root.contentTransparency);
+ property color colOnLayer1: m3colors.m3secondaryText;
+ property color colLayer2: ColorUtils.transparentize(ColorUtils.mix(m3colors.m3layerBackground2, m3colors.m3layerBackground3, 0.55), root.contentTransparency)
+ property color colOnLayer2: m3colors.m3surfaceText;
+ property color colLayer1Hover: ColorUtils.transparentize(ColorUtils.mix(colLayer1, colOnLayer1, 0.92), root.contentTransparency)
+ property color colLayer1Active: ColorUtils.transparentize(ColorUtils.mix(colLayer1, colOnLayer1, 0.85), root.contentTransparency);
+ property color colLayer2Hover: ColorUtils.transparentize(ColorUtils.mix(colLayer2, colOnLayer2, 0.90), root.contentTransparency)
+ property color colLayer2Active: ColorUtils.transparentize(ColorUtils.mix(colLayer2, colOnLayer2, 0.80), root.contentTransparency);
+ property color colPrimary: m3colors.m3accentPrimary
+ property color colPrimaryHover: ColorUtils.mix(colors.colPrimary, colLayer1Hover, 0.87)
+ property color colPrimaryActive: ColorUtils.mix(colors.colPrimary, colLayer1Active, 0.7)
+ property color colShadow: ColorUtils.transparentize(m3colors.m3shadowColor, 0.7)
+ }
+
+ rounding: QtObject {
+ property int unsharpen: 2
+ property int verysmall: 8
+ property int small: 12
+ property int normal: 17
+ property int large: 23
+ property int verylarge: 30
+ property int veryverylarge: 60
+ property int full: 9999
+ property int screenRounding: veryverylarge
+ property int windowRounding: veryverylarge
+ }
+
+ font: QtObject {
+ property QtObject family: QtObject {
+ property string uiFont: "Open Sans"
+ property string iconFont: "FiraConde Nerd Font"
+ property string codeFont: "JetBrains Mono NF"
+ }
+ property QtObject pixelSize: QtObject {
+ property int textSmall: 13
+ property int textBase: 15
+ property int textMedium: 16
+ property int textLarge: 19
+ property int iconLarge: 22
+ }
+ }
+
+ animationCurves: QtObject {
+ readonly property list<real> expressiveFastSpatial: [0.42, 1.67, 0.21, 0.90, 1, 1] // Default, 350ms
+ readonly property list<real> expressiveDefaultSpatial: [0.38, 1.21, 0.22, 1.00, 1, 1] // Default, 500ms
+ readonly property list<real> expressiveSlowSpatial: [0.39, 1.29, 0.35, 0.98, 1, 1] // Default, 650ms
+ readonly property list<real> expressiveEffects: [0.34, 0.80, 0.34, 1.00, 1, 1] // Default, 200ms
+ readonly property list<real> emphasized: [0.05, 0, 2 / 15, 0.06, 1 / 6, 0.4, 5 / 24, 0.82, 0.25, 1, 1, 1]
+ readonly property list<real> emphasizedAccel: [0.3, 0, 0.8, 0.15, 1, 1]
+ readonly property list<real> emphasizedDecel: [0.05, 0.7, 0.1, 1, 1, 1]
+ readonly property list<real> standard: [0.2, 0, 0, 1, 1, 1]
+ readonly property list<real> standardAccel: [0.3, 0, 1, 1, 1, 1]
+ readonly property list<real> standardDecel: [0, 0, 0, 1, 1, 1]
+ }
+
+ animation: QtObject {
+ property QtObject elementMove: QtObject {
+ property int duration: 500
+ property int type: Easing.BezierSpline
+ property list<real> bezierCurve: animationCurves.expressiveDefaultSpatial
+ property int velocity: 650
+ property Component numberAnimation: Component {
+ NumberAnimation {
+ duration: root.animation.elementMove.duration
+ easing.type: root.animation.elementMove.type
+ easing.bezierCurve: root.animation.elementMove.bezierCurve
+ }
+ }
+ property Component colorAnimation: Component {
+ ColorAnimation {
+ duration: root.animation.elementMove.duration
+ easing.type: root.animation.elementMove.type
+ easing.bezierCurve: root.animation.elementMove.bezierCurve
+ }
+ }
+ }
+ property QtObject elementMoveEnter: QtObject {
+ property int duration: 400
+ property int type: Easing.BezierSpline
+ property list<real> bezierCurve: animationCurves.emphasizedDecel
+ property int velocity: 650
+ property Component numberAnimation: Component {
+ NumberAnimation {
+ duration: root.animation.elementMoveEnter.duration
+ easing.type: root.animation.elementMoveEnter.type
+ easing.bezierCurve: root.animation.elementMoveEnter.bezierCurve
+ }
+ }
+ }
+ property QtObject elementMoveExit: QtObject {
+ property int duration: 200
+ property int type: Easing.BezierSpline
+ property list<real> bezierCurve: animationCurves.emphasizedAccel
+ property int velocity: 650
+ property Component numberAnimation: Component {
+ NumberAnimation {
+ duration: root.animation.elementMoveExit.duration
+ easing.type: root.animation.elementMoveExit.type
+ easing.bezierCurve: root.animation.elementMoveExit.bezierCurve
+ }
+ }
+ }
+ property QtObject elementMoveFast: QtObject {
+ property int duration: 200
+ property int type: Easing.BezierSpline
+ property list<real> bezierCurve: animationCurves.expressiveEffects
+ property int velocity: 850
+ property Component colorAnimation: Component { ColorAnimation {
+ duration: root.animation.elementMoveFast.duration
+ easing.type: root.animation.elementMoveFast.type
+ easing.bezierCurve: root.animation.elementMoveFast.bezierCurve
+ }}
+ property Component numberAnimation: Component { NumberAnimation {
+ duration: root.animation.elementMoveFast.duration
+ easing.type: root.animation.elementMoveFast.type
+ easing.bezierCurve: root.animation.elementMoveFast.bezierCurve
+ }}
+ }
+
+ property QtObject clickBounce: QtObject {
+ property int duration: 200
+ property int type: Easing.BezierSpline
+ property list<real> bezierCurve: animationCurves.expressiveFastSpatial
+ property int velocity: 850
+ property Component numberAnimation: Component { NumberAnimation {
+ duration: root.animation.clickBounce.duration
+ easing.type: root.animation.clickBounce.type
+ easing.bezierCurve: root.animation.clickBounce.bezierCurve
+ }}
+ }
+ property QtObject scroll: QtObject {
+ property int duration: 400
+ property int type: Easing.BezierSpline
+ property list<real> bezierCurve: animationCurves.standardDecel
+ }
+ property QtObject menuDecel: QtObject {
+ property int duration: 350
+ property int type: Easing.OutExpo
+ }
+ }
+
+ sizes: QtObject {
+ property real barHeight: 40
+ property real notificationPopupWidth: 410
+ property real searchWidthCollapsed: 260
+ property real searchWidth: 450
+ property real hyprlandGapsOut: 5
+ property real elevationMargin: 10
+ property real fabShadowRadius: 5
+ property real fabHoveredShadowRadius: 7
+ }
+}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage