aboutsummaryrefslogtreecommitdiff
path: root/linux/home/.config/ags/widget/bar/buttons/ScreenRecord.ts
blob: 1d6eb36edc51d88a4504b18b4ebf788ac23e8c33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import PanelButton from "../PanelButton"
import screenrecord from "service/screenrecord"
import icons from "lib/icons"

export default () => PanelButton({
    class_name: "recorder",
    on_clicked: () => screenrecord.stop(),
    visible: screenrecord.bind("recording"),
    child: Widget.Box({
        children: [
            Widget.Icon(icons.recorder.recording),
            Widget.Label({
                label: screenrecord.bind("timer").as(time => {
                    const sec = time % 60
                    const min = Math.floor(time / 60)
                    return `${min}:${sec < 10 ? "0" + sec : sec}`
                }),
            }),
        ],
    }),
})