Shift Key won't work with F1,F2 etc. keys in gnome2. Что может быть причиной?

I have a vnc session with gnome2 desktop.

The following are couple of examples where multiple key press working as expected and the last two examples have unexpected results (with F1 & F2).

Пожалуйста помоги.

(Shift + Enter)

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513198614, (95,-14), root:(97,63),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513198717, (95,-14), root:(97,63),
state 0x1, keycode 36 (keysym 0xff0d, Return), same_screen YES,
"   XLookupString gives 1 bytes: (0d) "
"   XmbLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513198790, (95,-14), root:(97,63),
state 0x1, keycode 36 (keysym 0xff0d, Return), same_screen YES,
"   XLookupString gives 1 bytes: (0d) "
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513198810, (95,-14), root:(97,63),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

(Shift + \)

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513201404, (95,-14), root:(97,63),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513201476, (95,-14), root:(97,63),
state 0x1, keycode 51 (keysym 0x7c, bar), same_screen YES,
XLookupString gives 1 bytes: (7c) "|"
XmbLookupString gives 1 bytes: (7c) "|"
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513201547, (95,-14), root:(97,63),
state 0x1, keycode 51 (keysym 0x7c, bar), same_screen YES,
XLookupString gives 1 bytes: (7c) "|"
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513201577, (95,-14), root:(97,63),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

(Shift + Backspace)

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513204915, (95,-14), root:(97,63),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513205006, (95,-14), root:(97,63),
state 0x1, keycode 22 (keysym 0xff08, BackSpace), same_screen YES,
XLookupString gives 1 bytes: (08) "
XmbLookupString gives 1 bytes: (08) "
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513205075, (95,-14), root:(97,63),
state 0x1, keycode 22 (keysym 0xff08, BackSpace), same_screen YES,
XLookupString gives 1 bytes: (08) "
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513205107, (95,-14), root:(97,63),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

In all the above examples:

  • Shift key is pressed
  • Other key is pressed and is released
  • Shift key is released.

(Shift + F1)

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513207893, (95,-14), root:(97,63),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513208137, (95,-14), root:(97,63),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513208137, (95,-14), root:(97,63),
state 0x0, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513208137, (95,-14), root:(97,63),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513208208, (95,-14), root:(97,63),
state 0x1, keycode 67 (keysym 0xffbe, F1), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513208273, (95,-14), root:(97,63),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

(Shift + F2)

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513219709, (79,-12), root:(81,65),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513219812, (79,-12), root:(81,65),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513219812, (79,-12), root:(81,65),
state 0x0, keycode 68 (keysym 0xffbf, F2), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyPress event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513219812, (79,-12), root:(81,65),
state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XmbLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513219885, (79,-12), root:(81,65),
state 0x1, keycode 68 (keysym 0xffbf, F2), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
root 0x3f, subw 0x0, time 3513219925, (79,-12), root:(81,65),
state 0x1, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
XLookupString gives 0 bytes: 
XFilterEvent returns: False

So, Holding Shift and Pressing F1 key gives the following result:

  • Shift is pressed and (and Shift Key is released)
  • Клавиша F1 нажата (и нажата клавиша Shift)
  • Клавиша F1 отпускается и клавиша Shift отпускается

Это означает, что клавиша Shift отпускается при нажатии клавиши F.

Как это предотвратить?

Alt работает нормально с клавишами F

Ниже приводится xmodmap для этого сервера:

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x6d)
mod1        Alt_L (0x40),  Alt_R (0x71),  Meta_L (0x9c)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x73),  Super_R (0x74),  Super_L (0x7f),  Hyper_L (0x80)
mod5        Mode_switch (0x8),  ISO_Level3_Shift (0x7c)

Ниже приводится xmodmap другого сервера, на котором работают клавиши Shift + F:

xmodmap:  up to 2 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock      
control     Control_L (0x25),  Control_R (0x6d)
mod1        Alt_L (0x40),  Alt_R (0x71)
mod2        Num_Lock (0x4d)
mod3      
mod4      
mod5      

Я попытался удалить последние 3 модификатора. Но все равно не работает. Нужно ли будет перезапустить любую службу, чтобы вступить в силу. Если так, то не сделали этого. Однако перезапуск VNC полностью сбрасывается к его настройкам по умолчанию.

Я также пытался отключить клавиши F. Но не знаю как. И даже если я отключу эти привязки клавиш F, команды клавиш Alt + F не будут работать правильно. Поэтому я не должен полностью отключать привязку клавиш F.

Пожалуйста помоги.

0 ответов

Другие вопросы по тегам