xorg modifiers refactor.

This commit is contained in:
Miroslav Šedivý
2021-01-12 22:54:13 +01:00
parent d89dd11b18
commit a0d8f1b880
7 changed files with 68 additions and 71 deletions

View File

@ -4,6 +4,7 @@ import (
"net/http"
"demodesk/neko/internal/utils"
"demodesk/neko/internal/types"
)
type KeyboardLayoutData struct {
@ -11,9 +12,8 @@ type KeyboardLayoutData struct {
}
type KeyboardModifiersData struct {
NumLock *bool `json:"numlock"`
CapsLock *bool `json:"capslock"`
ScrollLock *bool `json:"scrollock"`
NumLock *bool `json:"numlock"`
CapsLock *bool `json:"capslock"`
}
func (h *RoomHandler) keyboardLayoutSet(w http.ResponseWriter, r *http.Request) {
@ -33,28 +33,9 @@ func (h *RoomHandler) keyboardModifiersSet(w http.ResponseWriter, r *http.Reques
return
}
var NumLock = 0
if data.NumLock == nil {
NumLock = -1
} else if *data.NumLock {
NumLock = 1
}
var CapsLock = 0
if data.CapsLock == nil {
CapsLock = -1
} else if *data.CapsLock {
CapsLock = 1
}
var ScrollLock = 0
if data.ScrollLock == nil {
ScrollLock = -1
} else if *data.ScrollLock {
ScrollLock = 1
}
h.desktop.SetKeyboardModifiers(NumLock, CapsLock, ScrollLock)
h.desktop.SetKeyboardModifiers(types.KeyboardModifiers{
NumLock: data.NumLock,
CapsLock: data.CapsLock,
})
utils.HttpSuccess(w)
}