Compare commits

..

No commits in common. "0bb3a6f3c29442d90f360ffd7df09c7f60c1b6d8" and "cbf1c7fba68dc9c4a0a083537444bc85d3a28020" have entirely different histories.

3 changed files with 8 additions and 17 deletions

View File

@ -179,9 +179,8 @@ func (u *UsbGadget) SetOnKeysDownChange(f func(state KeysDownState)) {
} }
func (u *UsbGadget) scheduleAutoRelease(key byte) { func (u *UsbGadget) scheduleAutoRelease(key byte) {
u.log.Trace().Msg("scheduling autoRelease")
u.kbdAutoReleaseLock.Lock() u.kbdAutoReleaseLock.Lock()
defer unlockWithLog(&u.kbdAutoReleaseLock, u.log, "autoRelease scheduled") defer u.kbdAutoReleaseLock.Unlock()
if u.kbdAutoReleaseTimer != nil { if u.kbdAutoReleaseTimer != nil {
u.kbdAutoReleaseTimer.Stop() u.kbdAutoReleaseTimer.Stop()
@ -193,9 +192,8 @@ func (u *UsbGadget) scheduleAutoRelease(key byte) {
} }
func (u *UsbGadget) cancelAutoRelease() { func (u *UsbGadget) cancelAutoRelease() {
u.log.Trace().Msg("cancelling autoRelease")
u.kbdAutoReleaseLock.Lock() u.kbdAutoReleaseLock.Lock()
defer unlockWithLog(&u.kbdAutoReleaseLock, u.log, "autoRelease cancelled") defer u.kbdAutoReleaseLock.Unlock()
if u.kbdAutoReleaseTimer != nil { if u.kbdAutoReleaseTimer != nil {
u.kbdAutoReleaseTimer.Stop() u.kbdAutoReleaseTimer.Stop()
@ -203,9 +201,10 @@ func (u *UsbGadget) cancelAutoRelease() {
} }
func (u *UsbGadget) DelayAutoRelease() { func (u *UsbGadget) DelayAutoRelease() {
u.log.Trace().Msg("delaying autoRelease")
u.kbdAutoReleaseLock.Lock() u.kbdAutoReleaseLock.Lock()
defer unlockWithLog(&u.kbdAutoReleaseLock, u.log, "autoRelease delayed") defer u.kbdAutoReleaseLock.Unlock()
u.log.Trace().Msg("delaying auto-release")
if u.kbdAutoReleaseTimer == nil { if u.kbdAutoReleaseTimer == nil {
return return
@ -217,9 +216,8 @@ func (u *UsbGadget) DelayAutoRelease() {
} }
func (u *UsbGadget) performAutoRelease(key byte) { func (u *UsbGadget) performAutoRelease(key byte) {
u.log.Trace().Msg("performing autoRelease")
u.kbdAutoReleaseLock.Lock() u.kbdAutoReleaseLock.Lock()
defer unlockWithLog(&u.kbdAutoReleaseLock, u.log, "autoRelease performed") defer u.kbdAutoReleaseLock.Unlock()
select { select {
case <-u.keyboardStateCtx.Done(): case <-u.keyboardStateCtx.Done():
@ -466,10 +464,9 @@ func (u *UsbGadget) keypressReport(key byte, press bool, autoRelease bool) (Keys
if press { if press {
{ {
u.log.Trace().Msg("acquiring kbdAutoReleaseLock to update last key")
u.kbdAutoReleaseLock.Lock() u.kbdAutoReleaseLock.Lock()
u.kbdAutoReleaseLastKey = key u.kbdAutoReleaseLastKey = key
unlockWithLog(&u.kbdAutoReleaseLock, u.log, "last key updated") u.kbdAutoReleaseLock.Unlock()
} }
if autoRelease { if autoRelease {

View File

@ -9,7 +9,6 @@ import (
"path/filepath" "path/filepath"
"strconv" "strconv"
"strings" "strings"
"sync"
"time" "time"
"github.com/rs/zerolog" "github.com/rs/zerolog"
@ -165,8 +164,3 @@ func (u *UsbGadget) resetLogSuppressionCounter(counterName string) {
u.logSuppressionCounter[counterName] = 0 u.logSuppressionCounter[counterName] = 0
} }
} }
func unlockWithLog(lock *sync.Mutex, logger *zerolog.Logger, msg string, args ...any) {
logger.Trace().Msgf(msg, args...)
lock.Unlock()
}

View File

@ -104,7 +104,7 @@ export default function useKeyboard() {
} }
}; };
const KEEPALIVE_INTERVAL = 75; // TODO: use an adaptive interval based on RTT later const KEEPALIVE_INTERVAL = 75; // 200ms interval
const cancelKeepAlive = useCallback(() => { const cancelKeepAlive = useCallback(() => {
if (keepAliveTimerRef.current) { if (keepAliveTimerRef.current) {