Di recente ho acquistato una tastiera retroilluminata progettata in modo tale da utilizzare il tasto Scroll Lock per attivare la retroilluminazione. Ho scoperto rapidamente che Cinnamon non risponde correttamente quando si preme il tasto Scroll Lock. Inizialmente, ho pensato che la retroilluminazione della tastiera fosse DOA perché tutto il resto ha funzionato fuori dalla scatola. Dopo un riavvio ho scoperto che prima di avviare Xorg sono stato in grado di attivare e disattivare correttamente la retroilluminazione utilizzando il tasto Blocco scorrimento. Quindi, ancora una volta, dopo aver avviato Xorg (e conseguentemente cinnamon_session), questa funzionalità ha smesso di funzionare di nuovo.
Per far funzionare la retroilluminazione dopo l'avvio di Xorg sono stato costretto a rilasciare un: xset led named "Scroll Lock"
per abilitare e disabilitare questa funzionalità.
Dopo un po 'di ricerche, mi sono imbattuto in un programma chiamato xev
che ha scaricato le informazioni sugli eventi chiave sul terminale dopo l'avvio. Premendo il tasto Scroll Lock il terminale è stato popolato con queste informazioni:
Evento KeyPress, seriale 34, NO sintetico, finestra 0x2c00001, root 0x2df, subw 0x0, tempo 2609824, (410,0), root: (1724.142), stato 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES, XLookupString restituisce 0 byte: XmbLookupString restituisce 0 byte: XFilterEvent restituisce: Falso
KeyRelease event, serial 37, NO sintetico, finestra 0x2c00001, root 0x2df, subw 0x0, tempo 2609912, (410,0), root: (1724.142), stato 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES, XLookupString dà 0 byte:
Quindi so che l'evento chiave è stato inviato al kernel.
Inoltre, è interessante notare che ho osservato comportamenti strani quando ero nel terminale (ancora prima di avviare Xorg o Cinnamon) e usando Scroll Lock. Vale a dire, a questo punto la mia retroilluminazione si attivava come previsto, ma quando il blocco scorrimento è stato abilitato, non ho scritto nulla sullo schermo. Dopo aver disabilitato Scroll Lock, tutto ciò che avevo scritto veniva immediatamente scaricato sul terminale come se fosse stato precedentemente bufferizzato.
tl; dr Qual è il problema con Scroll Lock e Xorg?