import { Astal, Gtk } from "ags/gtk4";
import { Wireplumber } from "../../scripts/volume";
import { Pages } from "./Pages";
import { PageSound } from "./pages/Sound";
import { PageMicrophone } from "./pages/Microphone";
import { createBinding, With } from "ags";
import AstalWp from "gi://AstalWp";
export function Sliders() {
const slidersPages = as Pages;
return
{(sink: AstalWp.Endpoint) =>
(!Wireplumber.getDefault().isMutedSink() &&
Wireplumber.getDefault().getSinkVolume() > 0) ?
icon
: "audio-volume-muted-symbolic"
)} />
self.value = Math.floor(sink.volume * 100)}
value={createBinding(sink, "volume").as(v => Math.floor(v * 100))}
max={Wireplumber.getDefault().getMaxSinkVolume()}
onChangeValue={(_, _scrollType, value) => sink.set_volume(value / 100)} />
slidersPages.toggle(PageSound())} />
}
{(source: AstalWp.Endpoint) =>
(!Wireplumber.getDefault().isMutedSink() &&
Wireplumber.getDefault().getSinkVolume() > 0) ?
icon
: "microphone-sensitivity-muted-symbolic"
)} />
self.value = Math.floor(source.volume * 100)}
value={createBinding(source, "volume").as(v => Math.floor(v * 100))}
max={Wireplumber.getDefault().getMaxSinkVolume()}
onChangeValue={(_, _scrollType, value) => source.set_volume(value / 100)} />
slidersPages.toggle(PageMicrophone())} />
}
{slidersPages}
}