clipboard set for control paste.

This commit is contained in:
Miroslav Šedivý 2022-05-03 19:57:31 +00:00
parent 49ff490640
commit d5425ea457
3 changed files with 22 additions and 2 deletions

View file

@ -99,11 +99,18 @@ func (h *MessageHandlerCtx) controlCopy(session types.Session) error {
return h.desktop.KeyPress(xorg.XK_Control_L, xorg.XK_c)
}
func (h *MessageHandlerCtx) controlPaste(session types.Session) error {
func (h *MessageHandlerCtx) controlPaste(session types.Session, payload *message.ClipboardData) error {
if err := h.controlRequest(session); err != nil && !errors.Is(err, ErrIsAlreadyTheHost) {
return err
}
// if there have been set clipboard data, set them first
if payload != nil && payload.Text != "" {
if err := h.clipboardSet(session, payload); err != nil {
return err
}
}
return h.desktop.KeyPress(xorg.XK_Control_L, xorg.XK_v)
}