Here is a quick 5 minute hack to fix the misbehaviour of pre3 where it
clobbers events to applications without an option to turn of such a
"feature".
A more complete and sain patch will probably follow now that I can use
emacs to its full power.
-- 
Scott Moynes
diff -urN blackbox-0.62.0pre3/src/BaseDisplay.cc 
blackbox-0.62.0pre3-no-clobber-events/src/BaseDisplay.cc
--- blackbox-0.62.0pre3/src/BaseDisplay.cc      Tue Jan  8 01:48:31 2002
+++ blackbox-0.62.0pre3-no-clobber-events/src/BaseDisplay.cc    Thu Jan 10 12:37:37 
+2002
@@ -579,14 +579,21 @@
  * Grabs a button, but also grabs the button in every possible combination with
  * the keyboard lock keys, so that they do not cancel out the event.
  */
+
+/* why a window manager is clobbering events that clients want without an
+   option to turn off that "feature" is a mystery to man, woman, and beast. */
 void BaseDisplay::grabButton(unsigned int button, unsigned int modifiers,
     Window grab_window, Bool owner_events, unsigned int event_mask,
     int pointer_mode, int keybaord_mode, Window confine_to, Cursor cursor) const
 {
+  /*  
   for (unsigned int cnt = 0; cnt < MaskListLength; cnt++)
     XGrabButton(display, button, modifiers | MaskList[cnt], grab_window,
         owner_events, event_mask, pointer_mode, keybaord_mode, confine_to,
         cursor);
+  */
+  XGrabButton(display, button, modifiers, grab_window, owner_events,
+             event_mask, pointer_mode, keybaord_mode, confine_to, cursor);
 }
 /*
  * Releases the grab on a button, and ungrabs all possible combinations of the

Attachment: msg04841/pgp00000.pgp
Description: PGP signature

Reply via email to