diff --git a/default/quickshell/omarchy-shell/plugins/bar/common/PillButton.qml b/default/quickshell/omarchy-shell/plugins/bar/common/PillButton.qml index 1228c2cb..17b05fad 100644 --- a/default/quickshell/omarchy-shell/plugins/bar/common/PillButton.qml +++ b/default/quickshell/omarchy-shell/plugins/bar/common/PillButton.qml @@ -11,6 +11,8 @@ Rectangle { property color background: "transparent" property color hoverBackground: Qt.rgba(foreground.r, foreground.g, foreground.b, 0.12) property color pressedBackground: Qt.rgba(foreground.r, foreground.g, foreground.b, 0.22) + property color tooltipBackground: "#101315" + property color tooltipForeground: foreground property string fontFamily: "JetBrainsMono Nerd Font" property real fontSize: 12 property real iconSize: 14 @@ -19,9 +21,31 @@ Rectangle { property bool active: false property color activeBackground: Qt.rgba(foreground.r, foreground.g, foreground.b, 0.18) - ToolTip.visible: tooltipText !== "" && mouseArea.containsMouse - ToolTip.text: tooltipText - ToolTip.delay: 400 + ToolTip { + visible: root.tooltipText !== "" && mouseArea.containsMouse + text: root.tooltipText + delay: 400 + padding: 0 + + background: Rectangle { + color: root.tooltipBackground + border.color: root.tooltipForeground + border.width: 1 + radius: 0 + opacity: 0.97 + } + + contentItem: Text { + text: root.tooltipText + color: root.tooltipForeground + font.family: root.fontFamily + font.pixelSize: 11 + leftPadding: 10 + rightPadding: 10 + topPadding: 6 + bottomPadding: 6 + } + } signal clicked() signal rightClicked() diff --git a/default/quickshell/omarchy-shell/plugins/bar/widgets/bluetoothPanel.qml b/default/quickshell/omarchy-shell/plugins/bar/widgets/bluetoothPanel.qml index 3d02c7b7..78a3df30 100644 --- a/default/quickshell/omarchy-shell/plugins/bar/widgets/bluetoothPanel.qml +++ b/default/quickshell/omarchy-shell/plugins/bar/widgets/bluetoothPanel.qml @@ -102,6 +102,8 @@ Item { iconText: "󰂳" tooltipText: !root.adapter ? "" : !root.adapter.enabled ? "Bluetooth is off" : root.adapter.discovering ? "Stop scanning" : "Scan for devices" + tooltipBackground: root.bar.background + tooltipForeground: root.bar.foreground foreground: root.bar.foreground horizontalPadding: 6 verticalPadding: 4 @@ -115,6 +117,8 @@ Item { Common.PillButton { iconText: "󱁤" tooltipText: "Open Impala (TUI)" + tooltipBackground: root.bar.background + tooltipForeground: root.bar.foreground foreground: root.bar.foreground horizontalPadding: 6 verticalPadding: 4 @@ -126,6 +130,8 @@ Item { iconText: root.adapter && root.adapter.enabled ? "󰂯" : "󰂲" text: root.adapter && root.adapter.enabled ? "On" : "Off" tooltipText: root.adapter && root.adapter.enabled ? "Turn Bluetooth off" : "Turn Bluetooth on" + tooltipBackground: root.bar.background + tooltipForeground: root.bar.foreground foreground: root.bar.foreground horizontalPadding: 10 verticalPadding: 4 @@ -259,14 +265,37 @@ Item { Behavior on color { ColorAnimation { duration: 120 } } - ToolTip.visible: rowMouse.containsMouse && tooltipBody !== "" - ToolTip.text: tooltipBody - ToolTip.delay: 400 readonly property string tooltipBody: isDiscovered ? "Click to pair and connect" : isConnected ? "Click to disconnect · right-click to forget" : "Click to connect · right-click to forget" + ToolTip { + visible: rowMouse.containsMouse && row.tooltipBody !== "" + text: row.tooltipBody + delay: 400 + padding: 0 + + background: Rectangle { + color: root.bar.background + border.color: root.bar.foreground + border.width: 1 + radius: 0 + opacity: 0.97 + } + + contentItem: Text { + text: row.tooltipBody + color: root.bar.foreground + font.family: root.bar.fontFamily + font.pixelSize: 11 + leftPadding: 10 + rightPadding: 10 + topPadding: 6 + bottomPadding: 6 + } + } + Row { id: rowContent anchors.left: parent.left