Files
TheaninovOS/overlays/asztal/widget/settings/Wallpaper.ts
2024-04-17 10:03:57 +02:00

32 lines
853 B
TypeScript

import wallpaper from "service/wallpaper"
export default () => Widget.Box(
{ class_name: "row wallpaper" },
Widget.Box(
{ vertical: true },
Widget.Label({
xalign: 0,
class_name: "row-title",
label: "Wallpaper",
vpack: "start",
}),
Widget.Button({
on_clicked: wallpaper.random,
label: "Random",
}),
Widget.FileChooserButton({
on_file_set: ({ uri }) => wallpaper.set(uri!.replace("file://", "")),
}),
),
Widget.Box({ hexpand: true }),
Widget.Box({
class_name: "preview",
css: wallpaper.bind("wallpaper").as(wp => `
min-height: 120px;
min-width: 200px;
background-image: url('${wp}');
background-size: cover;
`),
}),
)