Merge pull request #76 from Ly-sec/revert-74-workspaces

Revert "Remove qt5-compat"
This commit is contained in:
Lysec 2025-08-03 12:59:24 +02:00 committed by GitHub
commit 317bb538b5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 64 additions and 68 deletions

View file

@ -4,7 +4,7 @@ import QtQuick.Layouts
import Quickshell import Quickshell
import Quickshell.Io import Quickshell.Io
import Quickshell.Wayland import Quickshell.Wayland
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import qs.Bar.Modules import qs.Bar.Modules
import qs.Settings import qs.Settings
import qs.Services import qs.Services

View file

@ -1,7 +1,7 @@
import QtQuick import QtQuick
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import qs.Settings import qs.Settings
import qs.Services import qs.Services
import qs.Components import qs.Components
@ -63,8 +63,8 @@ Item {
// Rounded corners using layer // Rounded corners using layer
layer.enabled: true layer.enabled: true
layer.effect: MultiEffect { layer.effect: OpacityMask {
maskEnabled: true cached: true
maskSource: Rectangle { maskSource: Rectangle {
width: albumArt.width width: albumArt.width
height: albumArt.height height: albumArt.height

View file

@ -2,7 +2,7 @@ import QtQuick
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Controls import QtQuick.Controls
import Quickshell import Quickshell
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import Quickshell.Services.SystemTray import Quickshell.Services.SystemTray
import Quickshell.Widgets import Quickshell.Widgets
import qs.Settings import qs.Settings
@ -63,8 +63,7 @@ Row {
backer.fillMode: Image.PreserveAspectFit backer.fillMode: Image.PreserveAspectFit
source: { source: {
let icon = modelData?.icon || ""; let icon = modelData?.icon || "";
if (!icon) if (!icon) return "";
return "";
// Process icon path // Process icon path
if (icon.includes("?path=")) { if (icon.includes("?path=")) {
const [name, path] = icon.split("?path="); const [name, path] = icon.split("?path=");
@ -81,7 +80,9 @@ Row {
easing.type: Easing.OutCubic easing.type: Easing.OutCubic
} }
} }
Component.onCompleted: {} Component.onCompleted: {
}
} }
} }
@ -91,33 +92,32 @@ Row {
hoverEnabled: true hoverEnabled: true
cursorShape: Qt.PointingHandCursor cursorShape: Qt.PointingHandCursor
acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton acceptedButtons: Qt.LeftButton | Qt.RightButton | Qt.MiddleButton
onClicked: mouse => { onClicked: (mouse) => {
if (!modelData) if (!modelData) return;
return;
if (mouse.button === Qt.LeftButton) { if (mouse.button === Qt.LeftButton) {
// Close any open menu first // Close any open menu first
if (trayMenu && trayMenu.visible) { if (trayMenu && trayMenu.visible) {
trayMenu.hideMenu(); trayMenu.hideMenu()
} }
if (!modelData.onlyMenu) { if (!modelData.onlyMenu) {
modelData.activate(); modelData.activate()
} }
} else if (mouse.button === Qt.MiddleButton) { } else if (mouse.button === Qt.MiddleButton) {
// Close any open menu first // Close any open menu first
if (trayMenu && trayMenu.visible) { if (trayMenu && trayMenu.visible) {
trayMenu.hideMenu(); trayMenu.hideMenu()
} }
modelData.secondaryActivate && modelData.secondaryActivate(); modelData.secondaryActivate && modelData.secondaryActivate()
} else if (mouse.button === Qt.RightButton) { } else if (mouse.button === Qt.RightButton) {
trayTooltip.tooltipVisible = false; trayTooltip.tooltipVisible = false
console.log("Right click on", modelData.id, "hasMenu:", modelData.hasMenu, "menu:", modelData.menu); console.log("Right click on", modelData.id, "hasMenu:", modelData.hasMenu, "menu:", modelData.menu)
// If menu is already visible, close it // If menu is already visible, close it
if (trayMenu && trayMenu.visible) { if (trayMenu && trayMenu.visible) {
trayMenu.hideMenu(); trayMenu.hideMenu()
return; return
} }
if (modelData.hasMenu && modelData.menu && trayMenu) { if (modelData.hasMenu && modelData.menu && trayMenu) {
@ -126,9 +126,9 @@ Row {
const menuY = height + 20; const menuY = height + 20;
trayMenu.menu = modelData.menu; trayMenu.menu = modelData.menu;
trayMenu.showAt(parent, menuX, menuY); trayMenu.showAt(parent, menuX, menuY);
} else } else {
// console.log("No menu available for", modelData.id, "or trayMenu not set") // console.log("No menu available for", modelData.id, "or trayMenu not set")
{} }
} }
} }
onEntered: trayTooltip.tooltipVisible = true onEntered: trayTooltip.tooltipVisible = true
@ -144,9 +144,9 @@ Row {
delay: 200 delay: 200
} }
Component.onDestruction: Component.onDestruction: {
// No cache cleanup needed // No cache cleanup needed
{} }
} }
} }
} }

View file

@ -2,7 +2,7 @@ import QtQuick
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Window import QtQuick.Window
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import Quickshell import Quickshell
import Quickshell.Io import Quickshell.Io
import qs.Settings import qs.Settings
@ -124,13 +124,13 @@ Item {
border.color: Qt.rgba(Theme.textPrimary.r, Theme.textPrimary.g, Theme.textPrimary.b, 0.1) border.color: Qt.rgba(Theme.textPrimary.r, Theme.textPrimary.g, Theme.textPrimary.b, 0.1)
border.width: 1 border.width: 1
layer.enabled: true layer.enabled: true
layer.effect: MultiEffect { layer.effect: DropShadow {
shadowColor: "black" color: "black"
// radius: 12 radius: 12
samples: 24
shadowVerticalOffset: 0 verticalOffset: 0
shadowHorizontalOffset: 0 horizontalOffset: 0
shadowOpacity: 0.10 opacity: 0.10
} }
} }

View file

@ -2,7 +2,7 @@ import QtQuick
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Effects import QtQuick.Effects
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import Quickshell.Wayland import Quickshell.Wayland
import Quickshell import Quickshell
import Quickshell.Services.Pam import Quickshell.Services.Pam
@ -146,7 +146,6 @@ WlSessionLock {
blurEnabled: true blurEnabled: true
blur: 0.48 // controls blur strength (0 to 1) blur: 0.48 // controls blur strength (0 to 1)
blurMax: 128 // max blur radius in pixels blurMax: 128 // max blur radius in pixels
// transparentBorder: true
} }
ColumnLayout { ColumnLayout {
@ -170,9 +169,8 @@ WlSessionLock {
visible: false visible: false
asynchronous: true asynchronous: true
} }
MultiEffect { OpacityMask {
anchors.fill: avatarImage anchors.fill: avatarImage
maskEnabled: true
source: avatarImage source: avatarImage
maskSource: Rectangle { maskSource: Rectangle {
width: avatarImage.width width: avatarImage.width
@ -191,11 +189,10 @@ WlSessionLock {
visible: Settings.settings.profileImage === "" visible: Settings.settings.profileImage === ""
} }
layer.enabled: true layer.enabled: true
layer.effect: MultiEffect { layer.effect: Glow {
shadowEnabled: true color: Theme.accentPrimary
shadowColor: Theme.accentPrimary radius: 8
// radius: 8 samples: 16
// samples: 16
} }
} }

View file

@ -2,6 +2,7 @@ import QtQuick
import QtQuick.Effects import QtQuick.Effects
import Quickshell import Quickshell
import Quickshell.Wayland import Quickshell.Wayland
import Qt5Compat.GraphicalEffects
import qs.Services import qs.Services
import qs.Settings import qs.Settings

View file

@ -1,7 +1,7 @@
import QtQuick import QtQuick
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Effects
import QtQuick.Controls import QtQuick.Controls
import Qt5Compat.GraphicalEffects
import qs.Settings import qs.Settings
Rectangle { Rectangle {
@ -74,8 +74,7 @@ Rectangle {
sourceSize.height: 64 sourceSize.height: 64
} }
MultiEffect { OpacityMask {
maskEnabled: true
anchors.fill: avatarImage anchors.fill: avatarImage
source: avatarImage source: avatarImage
maskSource: Rectangle { maskSource: Rectangle {

View file

@ -1,7 +1,7 @@
import QtQuick import QtQuick
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import qs.Settings import qs.Settings
import qs.Components import qs.Components
import qs.Services import qs.Services
@ -102,8 +102,8 @@ Rectangle {
// Rounded corners using layer // Rounded corners using layer
layer.enabled: true layer.enabled: true
layer.effect: MultiEffect { layer.effect: OpacityMask {
maskEnabled: true cached: true
maskSource: Rectangle { maskSource: Rectangle {
width: albumArt.width width: albumArt.width
height: albumArt.height height: albumArt.height

View file

@ -1,7 +1,7 @@
import QtQuick import QtQuick
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import Quickshell import Quickshell
import Quickshell.Io import Quickshell.Io
import qs.Settings import qs.Settings

View file

@ -1,7 +1,7 @@
import QtQuick import QtQuick
import QtQuick.Layouts import QtQuick.Layouts
import QtQuick.Controls import QtQuick.Controls
import QtQuick.Effects import Qt5Compat.GraphicalEffects
import Quickshell import Quickshell
import Quickshell.Io import Quickshell.Io
import qs.Settings import qs.Settings
@ -51,8 +51,7 @@ Rectangle {
z: 2 z: 2
} }
MultiEffect { OpacityMask {
maskEnabled:true
anchors.fill: parent anchors.fill: parent
source: Image { source: Image {
id: avatarImage id: avatarImage