create new tag
, view all tags
Continuing the quest. Some terms from events.c to understand.




Some terms from events.c to understand — is there some documentation somewhere that deals with this — try a Google search — not much luck on [NotifyGrab syncEvents] — found an old version of events.c from which it may be easier to understand the original intent:

Ok, here's the X Window System Technical Glossary — think I'll do some browsing through it.

  • grabs (of all sorts, including:)
  • keyboard grab
  • pointer grab
  • active grab
  • freezes and thaws of all sorts, including
  • ComputeFreezes
  • thaw
  • passive thaw
  • syncEvents
  • playingEvents

Other stuff:

  • X Application Software Engineering: Debugging X Input Events; Kenton Lee; talks about xev, xscope, and xmon, three tools for monitoring x events. xscope (or one of the others) may be useful if I adopt the approach of intercepting the X server to X client event stream and implementing the macro feature there.

Two related random thoughts re errors caused by this macro (i.e., interrupting the macro when necessary):

  • Maybe to deal with the possibility of initiating a keyboard macro in error, I should think about some means to interrupt or rollback the effects of a macro? (Rollback sounds very difficult at the X server level — what would you do, issue negative keydown / keyup events??? wink
  • I was considering incrementing the timestamps of keyboard event inserted by this macro facility with the smallest possible increment, in order to not cause problems elsewhere. There could be an advantage to using a larger increment if something in X handles the events in time order — maybe that would provide a chance of interrupting the stream of inserted events in the event a macro was initiated in error????


  • () RandyKramer - 30 Apr 2003
  • If you edit this page: add your name here; move this to the next line; and if you've used a comment marker (your initials in parenthesis), include it before your WikiName.

Page Ratings

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r2 - 2003-05-01 - RandyKramer
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by PerlCopyright 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding WikiLearn? WebBottomBar">Send feedback
See TWiki's New Look