commit 4173dac
delthas
·
2025-09-24 12:50:50 +0000 UTC
parent 0f4a102
Support screenshots on Darwin
2 files changed,
+47,
-1
+46,
-0
1@@ -0,0 +1,46 @@
2+//go:build darwin
3+
4+package ui
5+
6+import (
7+ "fmt"
8+ "os"
9+ "os/exec"
10+)
11+
12+var callback func(any)
13+
14+func (ui *UI) notify(target NotifyEvent, title, content string) int {
15+ ui.vx.Notify(title, content)
16+ return -1
17+}
18+
19+func notifyClose(id int) {}
20+
21+func Screenshot() error {
22+ f, err := os.CreateTemp("", "senpai-screenshot-*.png")
23+ if err != nil {
24+ return fmt.Errorf("opening screenshot file: %v", err)
25+ }
26+ f.Close()
27+
28+ c := exec.Command("screencapture", "-i", f.Name())
29+ if err := c.Start(); err != nil {
30+ return err
31+ }
32+ go func() {
33+ if err := c.Wait(); err != nil {
34+ return
35+ }
36+ callback(&ScreenshotEvent{
37+ Path: f.Name(),
38+ })
39+ }()
40+ return nil
41+}
42+
43+func DBusStart(f func(any)) {
44+ callback = f
45+}
46+
47+func DBusStop() {}
+1,
-1
1@@ -1,4 +1,4 @@
2-//go:build !linux
3+//go:build !linux && !darwin
4
5 package ui
6