Add injection backends
This commit is contained in:
parent
a7f50fed75
commit
9ee301fbeb
7 changed files with 290 additions and 4 deletions
|
|
@ -11,8 +11,10 @@ import (
|
|||
"strings"
|
||||
"syscall"
|
||||
|
||||
"lel/internal/clip"
|
||||
"lel/internal/config"
|
||||
"lel/internal/daemon"
|
||||
"lel/internal/inject"
|
||||
"lel/internal/ui"
|
||||
"lel/internal/x11"
|
||||
|
||||
|
|
@ -63,7 +65,16 @@ func main() {
|
|||
}
|
||||
defer x.UngrabHotkey(mods, keycode)
|
||||
|
||||
d := daemon.New(cfg, x, logger)
|
||||
backend, err := inject.NewBackend(cfg.InjectionBackend, inject.Deps{
|
||||
Clipboard: inject.ClipboardWriterFunc(clip.WriteClipboard),
|
||||
Paster: inject.NewXdotoolPaster(nil),
|
||||
Typer: inject.NewXdotoolTyper(nil),
|
||||
})
|
||||
if err != nil {
|
||||
logger.Fatalf("backend error: %v", err)
|
||||
}
|
||||
|
||||
d := daemon.New(cfg, x, logger, backend)
|
||||
|
||||
sockPath := filepath.Join(runtimeDir, "ctl.sock")
|
||||
if err := os.RemoveAll(sockPath); err != nil {
|
||||
|
|
@ -221,10 +232,21 @@ func handleConn(logger *log.Logger, conn net.Conn, d *daemon.Daemon, cfg *config
|
|||
return
|
||||
}
|
||||
|
||||
backend, err := inject.NewBackend(newCfg.InjectionBackend, inject.Deps{
|
||||
Clipboard: inject.ClipboardWriterFunc(clip.WriteClipboard),
|
||||
Paster: inject.NewXdotoolPaster(nil),
|
||||
Typer: inject.NewXdotoolTyper(nil),
|
||||
})
|
||||
if err != nil {
|
||||
_, _ = fmt.Fprintf(conn, "reload error: %v\n", err)
|
||||
return
|
||||
}
|
||||
|
||||
*mods = newMods
|
||||
*keycode = newKeycode
|
||||
*cfg = newCfg
|
||||
d.UpdateConfig(newCfg)
|
||||
d.UpdateBackend(backend)
|
||||
|
||||
_, _ = fmt.Fprintf(conn, "reloaded\n")
|
||||
default:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue