mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-06 05:25:41 -05:00
52 lines
1.6 KiB
QML
52 lines
1.6 KiB
QML
import QtQuick
|
|
import qs.Common
|
|
import qs.Services
|
|
|
|
Text {
|
|
property bool isMonospace: false
|
|
|
|
readonly property string resolvedFontFamily: {
|
|
const requestedFont = isMonospace ? SettingsData.monoFontFamily : SettingsData.fontFamily
|
|
const defaultFont = isMonospace ? SettingsData.defaultMonoFontFamily : SettingsData.defaultFontFamily
|
|
|
|
if (requestedFont === defaultFont) {
|
|
const availableFonts = Qt.fontFamilies()
|
|
if (!availableFonts.includes(requestedFont)) {
|
|
return isMonospace ? "Monospace" : "DejaVu Sans"
|
|
}
|
|
}
|
|
return requestedFont
|
|
}
|
|
|
|
readonly property var standardAnimation: {
|
|
"duration": Appearance.anim.durations.normal,
|
|
"easing.type": Easing.BezierSpline,
|
|
"easing.bezierCurve": Appearance.anim.curves.standard
|
|
}
|
|
|
|
color: Theme.surfaceText
|
|
font.pixelSize: Appearance.fontSize.normal
|
|
font.family: resolvedFontFamily
|
|
font.weight: SettingsData.fontWeight
|
|
wrapMode: Text.WordWrap
|
|
elide: Text.ElideRight
|
|
verticalAlignment: Text.AlignVCenter
|
|
antialiasing: true
|
|
|
|
Behavior on color {
|
|
ColorAnimation {
|
|
duration: standardAnimation.duration
|
|
easing.type: standardAnimation["easing.type"]
|
|
easing.bezierCurve: standardAnimation["easing.bezierCurve"]
|
|
}
|
|
}
|
|
|
|
Behavior on opacity {
|
|
NumberAnimation {
|
|
duration: standardAnimation.duration
|
|
easing.type: standardAnimation["easing.type"]
|
|
easing.bezierCurve: standardAnimation["easing.bezierCurve"]
|
|
}
|
|
}
|
|
}
|