2025-08-14 14:16:17 +02:00
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"fmt"
|
|
|
|
|
"log"
|
|
|
|
|
|
|
|
|
|
"github.com/tlinden/i3ipc"
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
func main() {
|
2025-08-15 12:16:08 +02:00
|
|
|
ipc := i3ipc.NewI3ipc()
|
2025-08-14 14:16:17 +02:00
|
|
|
|
|
|
|
|
err := ipc.Connect()
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Fatal(err)
|
|
|
|
|
}
|
2025-08-15 12:16:08 +02:00
|
|
|
defer ipc.Close()
|
2025-08-14 14:16:17 +02:00
|
|
|
|
|
|
|
|
tree, err := ipc.GetTree()
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.Fatal(err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
focused := tree.FindFocused()
|
|
|
|
|
|
|
|
|
|
if focused != nil {
|
|
|
|
|
fmt.Printf("focused node: %s\n id: %d\n Geometry: %dx%d\n",
|
|
|
|
|
focused.Name, focused.Id, focused.Geometry.Width, focused.Geometry.Height)
|
|
|
|
|
}
|
|
|
|
|
}
|