#3022 NORM Trial-3: Enable the Xevie extension

Zarro Boogs per Child bugtracker at laptop.org
Sat Aug 25 05:31:01 EDT 2007


#3022: Enable the Xevie extension
-----------------------------+----------------------------------------------
 Reporter:  marco            |       Owner:  jg     
     Type:  defect           |      Status:  new    
 Priority:  normal           |   Milestone:  Trial-3
Component:  x window system  |     Version:         
 Keywords:                   |    Verified:  0      
-----------------------------+----------------------------------------------
 In Sugar we need to be able to show the frame when the cursor moves to the
 corners or to the edges (for drag and drop only).

 Right now we are using input only windows in the corners to get the events
 but this approach has several problems:

  * It steal the events from the activity windows. While this is sort of
 acceptable for corners only it obviously can't work for edges.
  * It doesn't work at all while a drag is in progress. We don't get dnd
 enter events in gtk. And afaict it would not possible to fix that in gtk
 without changing X events semantics.

 In general the input only windows approach feels like a bad hack, it would
 be much better if we could get notification from X about global mouse
 motion events. Luckily there is an extension which does exactly this:

 http://freedesktop.org/wiki/Software/XEvIE

 We testes it out.

 Good:

 * It doesn't seem to affect performance at all. I tested it on the XO and
 I don't see any cpu usage increase while moving the mouse around on the
 screen very quickly.
 * It's compiled in the Fedora rpms. It requires a very small library which
 is already packaged. So enabling it would be matter of loading the
 extension in xorg.conf and adding one more rpm to the images.
 * It does exactly what we want.

 Bad:

 * We get errors when selecting the motion events (other events works
 fine). "Xlib: sequence lost (0x10000 > 0x5d) in reply type 0x6!". Stuff
 works anyway but... I'm not sure how bad is this.

 Jim, what do you think about it? Finding a proper solution to this issue
 is really important to get user interaction right.

-- 
Ticket URL: <https://dev.laptop.org/ticket/3022>
One Laptop Per Child <http://laptop.org/>



More information about the Bugs mailing list