forked from Shinonome/dots-hyprland
27 lines
1.2 KiB
QML
27 lines
1.2 KiB
QML
pragma Singleton
|
|
|
|
import qs.modules.common
|
|
import QtQuick
|
|
import Quickshell
|
|
import Quickshell.Services.SystemTray
|
|
|
|
Singleton {
|
|
id: root
|
|
|
|
property bool smartTray: Config.options.bar.tray.filterPassive
|
|
property list<var> itemsInUserList: SystemTray.items.values.filter(i => (Config.options.bar.tray.pinnedItems.includes(i.id) && (!smartTray || i.status !== Status.Passive)))
|
|
property list<var> itemsNotInUserList: SystemTray.items.values.filter(i => (!Config.options.bar.tray.pinnedItems.includes(i.id) && (!smartTray || i.status !== Status.Passive)))
|
|
|
|
property bool invertPins: Config.options.bar.tray.invertPinnedItems
|
|
property list<var> pinnedItems: invertPins ? itemsNotInUserList : itemsInUserList
|
|
property list<var> unpinnedItems: invertPins ? itemsInUserList : itemsNotInUserList
|
|
|
|
function getTooltipForItem(item) {
|
|
var result = item.tooltipTitle.length > 0 ? item.tooltipTitle
|
|
: (item.title.length > 0 ? item.title : item.id);
|
|
if (item.tooltipDescription.length > 0) result += " • " + item.tooltipDescription;
|
|
if (Config.options.bar.tray.showItemId) result += "\n[" + item.id + "]";
|
|
return result;
|
|
}
|
|
}
|