When a window doesn't have a size allocation on construction, it will never show
up. You can solve this by wrapping the children in a box and forcing the box to
have some size. For example when the window's direct child is a revealer that
starts off with reveal_child: false
Widget.Window({
child: Widget.Box({
css: "padding: 1px;",
child: Widget.Revealer(),
}),
});
Put svgs in a directory, named <icon-name>-symbolic.svg and use App.addIcons
or icons option in exported object
// config.js
App.addIcons(`${App.configDir}/assets`);
Widget.Icon({
icon: "custom-symbolic", // custom-symbolic.svg
css: "color: green;", // can be colored, like other named icons
});
If Widget.Window shows as up as a regular window, it usually means ags is
running in xwayland. Try running ags from a non xwayland terminal, or try
env GDK_BACKEND=wayland ags