Hallo,

auf Anregung von Elia habe ich mir das verhalten nochmal genau mit xev angeschaut. Details siehe unten.

Zwei Dinge sind mir aufgefallen:

1) Wenn das Problem austritt, werden andere Events geschickt

1.0) Die korrekte Reihenfolge von Events ist KeyPress Alt_L, KeyPress 53 „x“, KeyRelease 53 „x“, KeyRelease Alt_L

1.1) Wenn dieses Problem auftritt, fehlt das „KeyPress 53 ‚x‘”, statt dessen werden FocusOut, FocusIn, KeymapNotify geschickt. (Siehe z.B. „de(neo),de  - de aktiv“ unten“).

1.2) Der gleiche Effekt tritt immer auf, sobald eine der neo-Varianten aktiv ist: Alt-L plus Taste 53 wird zur in 1.1 genannten Feolgt. Dabei ist es egal, ob nur die neo-variante eingerichtet ist, oder zusammen mit „de“ und ob als erstes oder zweites.

1.3) Die in 1.1 genannte Folge erscheint auch, wenn man Alt-Tab drückt (KDE: „Zwischen Fenstern wechseln“) oder Alt-F3 („Fenstermenü“) - also Tastenkombinationen, die den Event Focus wirklich wechseln.

Das legt ide Vermutung nahe, dass auch der „Problem“ eine in KDE definierte Tastenfolge ist. Aber warum tritt sie nur auch, denn die Neo eingerichtet ist? Und: ich konnte keine solche Belegung in den „KDE Kurzbefehlen“ finden.


2) Weitere Tasten zeigen diesen Effekt

Betroffen sind die Tasten 54 „x“, 55 „v“, 56 „b“ und 17 „8“ (jeweils qwertz-Zeichen, das auch auf der Taste steht).

Nun wird es aer völlig obskur: Wenn ich den Kurzbefehl Alt-Tab deaktiviere, tritt der Effekt auch bei „x“ und „8” nicht mehr auf - allerdings weiterhin bei „v“ und „b“. Deaktivieren von Alt-F3 (auch in Kombination mit Alt-Tab) zeigen keinen Effekt.


Soweit meine Analyse - eine Lösungsidee habe ich allerding noch immer nicht.



*Nur "de"*

KeyPress event, serial 153, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73897560, (77,-6), root:(77,863),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 153, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73897936, (77,-6), root:(77,863),
    state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XmbLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 153, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73898047, (77,-6), root:(77,863),
    state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 153, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73898179, (77,-6), root:(77,863),
    state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False


----

*Nur de(neo)*

KeyPress event, serial 161, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73979456, (72,-15), root:(72,854),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 161, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73980134, (72,-15), root:(72,854),
    state 0x8, keycode 24 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XmbLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 161, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73980221, (72,-15), root:(72,854),
    state 0x8, keycode 24 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 161, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 73980561, (72,-15), root:(72,854),
    state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

-----

*de(neo),de  - neo aktiv*


KeyPress event, serial 177, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74076247, (74,-11), root:(74,858),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 177, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74076814, (74,-11), root:(74,858),
    state 0x8, keycode 24 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XmbLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 177, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74076924, (74,-11), root:(74,858),
    state 0x8, keycode 24 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 177, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74076969, (74,-11), root:(74,858),
    state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

----

*de(neo),de  - de aktiv*


KeyPress event, serial 177, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74194134, (1464,-335), root:(1464,534),
    state 0x2000, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

FocusOut event, serial 177, synthetic NO, window 0x4800001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 177, synthetic NO, window 0x4800001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 177, synthetic NO, window 0x0,
    keys:  0   0   0   0   0   0   32  0   1   0   0   0   0   0 0   0
           0   0   0   0   0   0   0   0   0   0   0   0   0   0 0   0

KeyRelease event, serial 177, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74194652, (1464,-335), root:(1464,534),
    state 0x2008, keycode 53 (keysym 0x78, x), same_screen YES,
    XKeysymToKeycode returns keycode: 24
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 177, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74194753, (1464,-335), root:(1464,534),
    state 0x2008, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

-----

de,de(neo)  - de aktiv


KeyPress event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74342281, (1612,-8), root:(1612,861),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

FocusOut event, serial 185, synthetic NO, window 0x4800001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 185, synthetic NO, window 0x4800001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 185, synthetic NO, window 0x0,
    keys:  0   0   0   0   0   0   32  0   1   0   0   0   0   0 0   0
           0   0   0   0   0   0   0   0   0   0   0   0   0   0 0   0

KeyRelease event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74342616, (1612,-8), root:(1612,861),
    state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74342717, (1612,-8), root:(1612,861),
    state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

---

de,de(neo)  - neo aktiv

KeyPress event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74435240, (1750,195), root:(1750,1064),
    state 0x2000, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyPress event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74435559, (1750,195), root:(1750,1064),
    state 0x2008, keycode 24 (keysym 0x78, x), same_screen YES,
    XKeysymToKeycode returns keycode: 53
    XLookupString gives 1 bytes: (78) "x"
    XmbLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74435646, (1750,195), root:(1750,1064),
    state 0x2008, keycode 24 (keysym 0x78, x), same_screen YES,
    XKeysymToKeycode returns keycode: 53
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74435827, (1750,195), root:(1750,1064),
    state 0x2008, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False


Bemerkenswert:

Wenn neo aktiv ist, dann wird Taste 53 (ö in neo) ebenfalls mit dem FokusOut + FocusIn + KeymapNotify umgesetzt.


KeyPress event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74421870, (1750,195), root:(1750,1064),
    state 0x2000, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

FocusOut event, serial 185, synthetic NO, window 0x4800001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 185, synthetic NO, window 0x4800001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 185, synthetic NO, window 0x0,
    keys:  2   0   0   0   0   0   32  0   1   0   0   0   0   0 0   0
           0   0   0   0   0   0   0   0   0   0   0   0   0   0 0   0

KeyRelease event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74422309, (1750,195), root:(1750,1064),
    state 0x2008, keycode 53 (keysym 0xf6, odiaeresis), same_screen YES,
    XKeysymToKeycode returns keycode: 47
    XLookupString gives 2 bytes: (c3 b6) "ö"
    XFilterEvent returns: False

KeyRelease event, serial 185, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74422457, (1750,195), root:(1750,1064),
    state 0x2008, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False


---------------

Nur de(neo-qwert)

KeyPress event, serial 48, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74857465, (1403,-361), root:(1403,508),
    state 0x0, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

FocusOut event, serial 48, synthetic NO, window 0x4800001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 48, synthetic NO, window 0x4800001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 48, synthetic NO, window 0x0,
    keys:  0   0   0   0   0   0   32  0   1   0   0   0   0   0 0   0
           0   0   0   0   0   0   0   0   0   0   0   0   0   0 0   0

KeyRelease event, serial 48, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74858319, (1403,-361), root:(1403,508),
    state 0x8, keycode 53 (keysym 0x78, x), same_screen YES,
    XLookupString gives 1 bytes: (78) "x"
    XFilterEvent returns: False

KeyRelease event, serial 48, synthetic NO, window 0x4800001,
    root 0x136, subw 0x0, time 74858794, (1403,-361), root:(1403,508),
    state 0x8, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False



--
+++hartmut

| Hartmut Goebel            |                       |
|hart...@goebel-consult.de  |www.goebel-consult.de  |
_______________________________________________
Diskussion mailing list -- diskussion@neo-layout.org
To unsubscribe send an email to diskussion-le...@neo-layout.org

Antwort per Email an