ags/widget/Tray.tsx
2025-04-06 10:06:25 -04:00

32 lines
726 B
TypeScript

import { bind } from "astal";
import { Gtk } from "astal/gtk4";
import AstalTray from "gi://AstalTray";
const Tray = function () {
const tray = AstalTray.get_default();
const trayItems = bind(tray, "items");
function OpenTrayItem(button: Gtk.MenuButton, item: AstalTray.TrayItem) {
item.about_to_show();
}
return (
<box cssClasses={["Tray"]}>
{bind(trayItems).as((items) =>
items.map((item) => {
return (
<menubutton>
<image
tooltip_text={item.title || item.tooltip.title}
file={item.iconName || "NONE"}
/>
</menubutton>
);
}),
)}
</box>
);
};
export default Tray;