[Bug 2581] New: Keyboard ony work when cursor locate at windows top title bar area

Wine Bugs wine-bugs at winehq.org
Wed Nov 24 12:42:41 CST 2004


http://bugs.winehq.org/show_bug.cgi?id=2581

           Summary: Keyboard ony work when cursor locate at windows top
                    title bar area
           Product: Wine
           Version: 20041019
          Platform: PC
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: wine-binary
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: azure at totem.ca


I find out this problem since I start using wine years ago.  

I Start using Wine since Redhat 7.3 and now I am using Fedora Core 3 and still
had the same problem.

I had the same problem with RXVT and they send me some code to modify the RXVT
and re-compile it and it work.


The following is how the code change in rxvt 

=======================================================================
this is caused by a design flaw in X11, how synergy snoops for
events, and how rxvt handles keyboard events.  there may be
something i can do to synergy to avoid the problem but fixing
rxvt is a whole lot simpler.  i filed a bug against rxvt and
included a patch, which i've included below if you'd like to
apply it to rxvt 2.7.10 yourself.

cheers,
-chris

diff -ur rxvt-2.7.10-old/src/init.c rxvt-2.7.10/src/init.c
--- rxvt-2.7.10-old/src/init.c  Tue Dec  3 21:21:39 2002
+++ rxvt-2.7.10/src/init.c      Sat May 15 16:41:46 2004
@@ -1170,7 +1170,11 @@
 #endif
     XDefineCursor(r->Xdisplay, r->TermWin.vt, r->TermWin_cursor);
     XSelectInput(r->Xdisplay, r->TermWin.vt,
-                (ExposureMask | ButtonPressMask | ButtonReleaseMask
+                (KeyPressMask
+#if defined(MOUSE_WHEEL) && defined(MOUSE_SLIP_WHEELING)
+                 | KeyReleaseMask
+#endif
+                 | ExposureMask | ButtonPressMask | ButtonReleaseMask
                  | PropertyChangeMask
                  | Button1MotionMask | Button3MotionMask));

@@ -1188,7 +1192,11 @@
 #endif
        XDefineCursor(r->Xdisplay, r->menuBar.win, r->h->cursor_leftptr);
        XSelectInput(r->Xdisplay, r->menuBar.win,
-                    (ExposureMask | ButtonPressMask | ButtonReleaseMask
+                    (KeyPressMask
+#if defined(MOUSE_WHEEL) && defined(MOUSE_SLIP_WHEELING)
+                     | KeyReleaseMask
+#endif
+                     | ExposureMask | ButtonPressMask | ButtonReleaseMask
                      | Button1MotionMask));
     }
 #endif
diff -ur rxvt-2.7.10-old/src/scrollbar.c rxvt-2.7.10/src/scrollbar.c
--- rxvt-2.7.10-old/src/scrollbar.c     Mon Apr 15 20:44:58 2002
+++ rxvt-2.7.10/src/scrollbar.c Sat May 15 16:48:06 2004
@@ -109,7 +109,11 @@
 #endif
        XDefineCursor(r->Xdisplay, r->scrollBar.win, r->h->cursor_leftptr);
        XSelectInput(r->Xdisplay, r->scrollBar.win,
-                    (ExposureMask | ButtonPressMask | ButtonReleaseMask
+                    (KeyPressMask
+#if defined(MOUSE_WHEEL) && defined(MOUSE_SLIP_WHEELING)
+                     | KeyReleaseMask
+#endif
+                     | ExposureMask | ButtonPressMask | ButtonReleaseMask
                      | Button1MotionMask | Button2MotionMask
                      | Button3MotionMask));
        delayed_init = 1;

=============================================

And I just find out if i do a command "cat /etc/localtime" ( Mountain Time 
America/Edmonton) and then start the wine then the problem fixed.  I had no idea
how and why but it work.

Hope this can help to fix the problem.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the wine-bugs mailing list