load higher resolution tray icons for high-dpi screens
This commit is contained in:
+27
-15
@@ -305,22 +305,34 @@ Variants {
|
||||
}
|
||||
}
|
||||
|
||||
Drawing {
|
||||
id: drawing
|
||||
Loader {
|
||||
id: drawingLoader
|
||||
|
||||
anchors.fill: parent
|
||||
z: 2
|
||||
active: visibilities.isDrawing
|
||||
|
||||
sourceComponent: Drawing {
|
||||
id: drawing
|
||||
|
||||
anchors.fill: parent
|
||||
z: 2
|
||||
}
|
||||
}
|
||||
|
||||
DrawingInput {
|
||||
id: input
|
||||
Loader {
|
||||
id: inputLoader
|
||||
|
||||
bar: bar
|
||||
drawing: drawing
|
||||
panels: panels
|
||||
popout: panels.drawing
|
||||
visibilities: visibilities
|
||||
z: 2
|
||||
active: visibilities.isDrawing
|
||||
|
||||
sourceComponent: DrawingInput {
|
||||
id: input
|
||||
|
||||
bar: bar
|
||||
drawing: drawingLoader.item
|
||||
panels: panels
|
||||
popout: panels.drawing
|
||||
visibilities: visibilities
|
||||
z: 2
|
||||
}
|
||||
}
|
||||
|
||||
Interactions {
|
||||
@@ -328,8 +340,8 @@ Variants {
|
||||
|
||||
anchors.fill: parent
|
||||
bar: bar
|
||||
drawing: drawing
|
||||
input: input
|
||||
drawing: drawingLoader.item
|
||||
input: inputLoader.item
|
||||
panels: panels
|
||||
popouts: panels.popouts
|
||||
screen: scope.modelData
|
||||
@@ -340,7 +352,7 @@ Variants {
|
||||
id: panels
|
||||
|
||||
bar: bar
|
||||
drawingItem: drawing
|
||||
drawingItem: drawingLoader.item
|
||||
screen: scope.modelData
|
||||
visibilities: visibilities
|
||||
|
||||
|
||||
@@ -44,11 +44,11 @@ Item {
|
||||
Loader {
|
||||
id: icon
|
||||
|
||||
active: Qt.binding(() => root.shouldBeActive || root.visible)
|
||||
active: root.shouldBeActive || root.visible
|
||||
anchors.right: parent.right
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
asynchronous: true
|
||||
height: content.contentItem.height
|
||||
height: content.item.height
|
||||
opacity: root.expanded ? 0 : 1
|
||||
|
||||
Behavior on opacity {
|
||||
@@ -64,6 +64,7 @@ Item {
|
||||
Loader {
|
||||
id: content
|
||||
|
||||
active: root.shouldBeActive || root.visible
|
||||
anchors.right: parent.right
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
asynchronous: true
|
||||
@@ -77,7 +78,5 @@ Item {
|
||||
drawing: root.drawing
|
||||
visibilities: root.visibilities
|
||||
}
|
||||
|
||||
Component.onCompleted: active = Qt.binding(() => root.shouldBeActive || root.visible)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ import QtQuick
|
||||
import QtQuick.VectorImage
|
||||
import Quickshell
|
||||
import Quickshell.Services.SystemTray
|
||||
import qs.Helpers
|
||||
import qs.Modules
|
||||
import qs.Components
|
||||
import qs.Config
|
||||
@@ -11,6 +12,7 @@ Item {
|
||||
id: root
|
||||
|
||||
property bool current: popouts.currentName.startsWith(`traymenu${ind}`) && popouts.hasCurrent
|
||||
readonly property real dpr: Hypr.monitorFor(loader.screen).scale
|
||||
property bool hasLoaded: false
|
||||
required property int ind
|
||||
required property SystemTrayItem item
|
||||
@@ -48,9 +50,11 @@ Item {
|
||||
id: icon
|
||||
|
||||
anchors.centerIn: parent
|
||||
antialiasing: true
|
||||
color: root.current ? DynamicColors.palette.m3onPrimary : DynamicColors.palette.m3onSurface
|
||||
implicitSize: 22
|
||||
implicitSize: 24 * root.dpr
|
||||
layer.enabled: Config.general.color.smart || Config.general.color.scheduleDark
|
||||
scale: 1 / root.dpr
|
||||
source: root.item.icon
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user