Control: tag -1 confirmed On Sun, Mar 23, 2014 at 11:10:34PM +0000, Ken Milmore wrote: > LightDM causes problems with mouse cursors and startup notifications on the > Xfce desktop (and possibly elsewhere). These seem to be caused by the lightdm > greeter setting a device-specific cursor on the root window (i.e. a cursor set > through XIDefineCursor, called in this case through gdk_window_set_cursor). > This cusror overrides any "normal" cursors set in the desktop environment with > XDefineCursor. > > On Xfce in particular, the most noticeable effect is that application startup > notifications do not work - no busy cursor is shown when an application is > launched from the desktop or menus. Also, if a pointer theme is set, this is > overridden on the root window which continues to show the pointer which was > set > by lightdm. > > An easy way to demonstrate this problem is to run "xsetroot -cursor_name > watch" > from a terminal window. A "busy" cursor should appear when the pointer is > moved over the desktop; but instead the default arrow cursor remains. > > This problem appears to have already been reported in several other places: > > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=694353 > https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=671121 > https://bugs.launchpad.net/ubuntu/+source/unity-greeter/+bug/1024482 > > The discussion following on from the Ubuntu bug report seems to have got to > the > root of the problem: When a "device cursor" has been set, it overrides any > "ordinary" cursor defined on the window. Unfortunately nobody seems to have > applied a fix yet.
Thanks for the report and the patch. Since there's already a large discussion on the launchpad bug, I'm CC:ing it in order to make discussion there. > > I would like to suggest that the attached patch be applied, which I have > tested on Wheezy with Xfce. It sets the root cursor using XDefineCursor, > which > avoids the problems caused by the XInput2 cursor precedence rules. A fairly > thorough explanation of why this should work appears on comment 15 of the > Ubuntu bug report. > > I think the patch should also apply against Jessie/Sid, although I haven't had > a chance to test it on those platforms yet. I'm not completely sure it's the right solution here. I mean, it might be the wisest short-term one, but it'll also break XInput2 features. I guess not much people already use them and I'm not sure how well they work, but I guess the best way to fix the issue would be to use XInput2 API correctly everywhere, so the “right” cursor is always found. I'm not sure what that means concerning “global” cursors like the notification one (I guess it has no reason to be defined until we arrive at the root window), but I guess that's something which should be discussed at the GTK level. Regards, -- Yves-Alexis Perez
signature.asc
Description: Digital signature