home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / sci / virtual / 4212 < prev    next >
Encoding:
Internet Message Format  |  1992-12-29  |  2.4 KB

  1. Path: sparky!uunet!spool.mu.edu!wupost!micro-heart-of-gold.mit.edu!uw-beaver!news.u.washington.edu!stein.u.washington.edu!hlab
  2. From: gavin@krypton.asd.sgi.com (Gavin Bell)
  3. Newsgroups: sci.virtual-worlds
  4. Subject: Re: TECH: Has anyone extended X?
  5. Date: 23 Dec 1992 00:13:00 GMT
  6. Organization: Silicon Graphics, Inc.  Mountain View, CA
  7. Lines: 40
  8. Approved: cyberoid@milton.u.washington.edu
  9. Message-ID: <1hp3ptINNcfn@shelley.u.washington.edu>
  10. References: <1992Dec12.041710.16989@u.washington.edu> <1992Dec17.203714.8346@u.w
  11. NNTP-Posting-Host: stein.u.washington.edu
  12. Originator: hlab@stein.u.washington.edu
  13.  
  14.  
  15.  
  16. In <1992Dec17.203714.8346@u.washington.edu> bobp@hal.com (Bob
  17. Pendleton) writes:
  18.  
  19. >X has a device input extension, called "xinput" that is designed to
  20. >make it easy to add new input devices to an X server.
  21.  
  22. Has anybody else stumbled across the following problems and dealt with
  23. them? :
  24.  
  25. -- Xt doesn't deal well with extension devices/events (if I remember,
  26. it won't distribute extension events into the widget hierarchy).
  27.  
  28. -- X actually doesn't really deal very well with input devices other
  29. than the keyboard and mouse.  For example, X considers the user
  30. pressing down on the shift key and then pressing down on the 'a' key
  31. as two events, but has a limited set of buttons it considers
  32. 'modifiers', whose state is stored with every event.  I believe it
  33. isn't possible to extend the set of modifiers for other input devices
  34. (e.g. spaceball button number 1 being pressed when 'k' key on keyboard
  35. is hit...).  As another example, a mouse-press down pins input focus
  36. to the window that the mouse is under, so mouse motion events and the
  37. mouse up event will go to the window the user clicked on (a very
  38. desireable property!).  However, other devices might need a similar
  39. behavior-- just because you happen to bump the mouse while making a
  40. gesture with your dataglove, you want the whole gesture to go to the
  41. window the cursor was over when you started!
  42.  
  43. In my humble opinion, X (and Xt) is really broken when dealing with
  44. devices other than the keyboard and mouse.  Dealing with arbitrary
  45. input devices is certainly non-trivial, but it seems like a much
  46. better job could have been done with some careful thought and design.
  47. After all, you don't have to worry much about optimal performance;
  48. these are all fairly low bandwidth input devices (mice generate a few
  49. hundred events per second at most, trackballs and datagloves about the
  50. same...).
  51.  
  52. --
  53. --gavin     (gavin@sgi.com,  (415)390-1024)
  54.