[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

modifiers problems with xlibs 4.3.0.dfsg.1-5



Hi,

The new xlibs package (4.3.0.dfsg.1-5) seems to have some modifier'
problems that breaks alt+tab with metacity for example.

I've attached the xev output for an "alt+tab" action in a "xinit /usr/
bin/X11/xev -- :1 vt8 > /tmp/xev.out" to the mail.

After talking with Brandon on IRC I've tried to revert some changes to
compat/misc (patch xlibs-modifier.patch attached to the mail).

This patch fix the problem on one of my boxes, but has some weird
effects : if you keep a key pressed xev doesn't stop to display "pressed
- released - pressed ..."  events instead of displaying one "pressed".

Then I've tried to replace xkb/symbols/pc/pc with the xlibs -4
version ... it fixes the "multi-events problem" but my breaks shift/
altgr/... combinated actions. 


Does somebody has an idea of what is exactly broken in xlibs 4.3.0.
dfsg.1-5 ? Let me know if you need more details of the problems ...



Thanks,

Sebastien Bacher



Outer window is 0x400001, inner window is 0x400002

PropertyNotify event, serial 8, synthetic NO, window 0x400001,
    atom 0x27 (WM_NAME), time 4534, state PropertyNewValue

PropertyNotify event, serial 9, synthetic NO, window 0x400001,
    atom 0x22 (WM_COMMAND), time 4534, state PropertyNewValue

PropertyNotify event, serial 10, synthetic NO, window 0x400001,
    atom 0x28 (WM_NORMAL_HINTS), time 4534, state PropertyNewValue

CreateNotify event, serial 11, synthetic NO, window 0x400001,
    parent 0x400001, window 0x400002, (10,10), width 50, height 50
border_width 4, override NO

MapNotify event, serial 12, synthetic NO, window 0x400001,
    event 0x400001, window 0x400002, override NO

MapNotify event, serial 13, synthetic NO, window 0x400001,
    event 0x400001, window 0x400001, override NO

VisibilityNotify event, serial 13, synthetic NO, window 0x400001,
    state VisibilityUnobscured

Expose event, serial 13, synthetic NO, window 0x400001,
    (0,0), width 178, height 10, count 3

Expose event, serial 13, synthetic NO, window 0x400001,
    (0,10), width 10, height 58, count 2

Expose event, serial 13, synthetic NO, window 0x400001,
    (68,10), width 110, height 58, count 1

Expose event, serial 13, synthetic NO, window 0x400001,
    (0,68), width 178, height 110, count 0

EnterNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5280, (174,54), root:(176,56),
    mode NotifyNormal, detail NotifyAncestor, same_screen YES,
    focus YES, state 0

KeymapNotify event, serial 16, synthetic NO, window 0x0,
    keys:  63  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

MotionNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5280, (158,42), root:(160,44),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5296, (146,32), root:(148,34),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5296, (134,22), root:(136,24),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5312, (124,14), root:(126,16),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5312, (114,6), root:(116,8),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5328, (112,5), root:(114,7),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 5328, (110,4), root:(112,6),
    state 0x0, is_hint 0, same_screen YES

KeyPress event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 7878, (110,4), root:(112,6),
    state 0x0, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

KeyRelease event, serial 16, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 7878, (110,4), root:(112,6),
    state 0x40, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

KeyPress event, serial 21, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 8132, (110,4), root:(112,6),
    state 0x0, keycode 115 (keysym 0xffeb, Super_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

KeyPress event, serial 21, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 8993, (110,4), root:(112,6),
    state 0x40, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

KeyPress event, serial 21, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 9918, (110,4), root:(112,6),
    state 0x48, keycode 23 (keysym 0xff09, Tab), same_screen YES,
    XLookupString gives 1 bytes:  "	"

KeyRelease event, serial 21, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 10080, (110,4), root:(112,6),
    state 0x48, keycode 23 (keysym 0xff09, Tab), same_screen YES,
    XLookupString gives 1 bytes:  "	"

KeyRelease event, serial 21, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 10113, (110,4), root:(112,6),
    state 0x48, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

KeyPress event, serial 21, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 13242, (110,4), root:(112,6),
    state 0x40, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
    XLookupString gives 0 bytes:  ""

KeyPress event, serial 21, synthetic NO, window 0x400001,
    root 0x3f, subw 0x0, time 13540, (110,4), root:(112,6),
    state 0x44, keycode 64 (keysym 0xffe9, Alt_L), same_screen YES,
    XLookupString gives 0 bytes:  ""
--- misc.orig	2004-06-19 05:09:51.000000000 +0200
+++ misc	2004-06-19 05:13:50.000000000 +0200
@@ -6,104 +6,26 @@
 
 default partial xkb_compatibility "misc"  {
 
-    virtual_modifiers	Alt,Meta,Super,Hyper,ScrollLock;
+    virtual_modifiers  Alt,ScrollLock;
 
     // Interpretations for some other useful keys
 
-    interpret Terminate_Server {
-        action = Terminate();
-    };
-
+    interpret Terminate_Server     { action = Terminate(); };
+    	    
     setMods.clearLocks= True;
 
     // Sets the "Alt" virtual modifier
 
+    setMods.clearLocks= True;     
     interpret Alt_L+Any     {
-        useModMapMods= level1;
-	virtualModifier= Alt;
+    	virtualModifier= Alt;
 	action = SetMods(modifiers=modMapMods);
     };
 
-    interpret Alt_L	{
+    interpret Alt_R+Any        {
 	action = SetMods(modifiers=Alt);
     };
 
-    interpret Alt_R+Any     {
-        useModMapMods= level1;
-	virtualModifier= Alt;
-	action = SetMods(modifiers=modMapMods);
-    };
-
-    interpret Alt_R	{
-	action = SetMods(modifiers=Alt);
-    };
-
-    // Sets the "Meta" virtual modifier
-
-    interpret Meta_L+Any     {
-//        useModMapMods= level1;
-	virtualModifier= Meta;
-	action = SetMods(modifiers=modMapMods);
-    };
-
-    interpret Meta_L	{
-	action = SetMods(modifiers=Meta);
-    };
-
-    interpret Meta_R+Any     {
-        useModMapMods= level1;
-	virtualModifier= Meta;
-	action = SetMods(modifiers=modMapMods);
-    };
-
-    interpret Meta_R	{
-	action = SetMods(modifiers=Alt);
-    };
-
-    // Sets the "Super" virtual modifier
-
-    interpret Super_L+Any     {
-//        useModMapMods= level1;
-	virtualModifier= Super;
-	action = SetMods(modifiers=modMapMods);
-    };
-
-    interpret Super_L	{
-	action = SetMods(modifiers=Super);
-    };
-
-    interpret Super_R+Any     {
-        useModMapMods= level1;
-	virtualModifier= Super;
-	action = SetMods(modifiers=modMapMods);
-    };
-
-    interpret Super_R	{
-	action = SetMods(modifiers=Super);
-    };
-
-    // Sets the "Hyper" virtual modifier
-
-    interpret Hyper_L+Any     {
-//        useModMapMods= level1;
-	virtualModifier= Hyper;
-	action = SetMods(modifiers=modMapMods);
-    };
-
-    interpret Hyper_L	{
-	action = SetMods(modifiers=Hyper);
-    };
-
-    interpret Hyper_R+Any     {
-        useModMapMods= level1;
-	virtualModifier= Hyper;
-	action = SetMods(modifiers=modMapMods);
-    };
-
-    interpret Hyper_R	{
-	action = SetMods(modifiers=Hyper);
-    };
-
     // Sets the "ScrollLock" virtual modifier and
     // makes it actually lock when pressed.  Sets
     // up a map for the scroll lock indicator.

Reply to: