• Carlos Garnacho's avatar
    Do not modify associated device for non-master devices on dispose · 8fdd8dbc
    Carlos Garnacho authored
    Only master devices must modify the associated device to separate
    a pointer/keyboard pair, slave devices must only call
    _gdk_device_remove_slave().
    
    Fixes bug 639767 - password not accepted in gnome-screensaver dialog,
    reported by Frederic Crozat. On VT-switch, the X server removes its
    grab on HW devices, the effect on clients is that slave devices
    disappear, and these were mistakenly mangling the master device
    hierarchy. so gdk_device_get_associated_device() on the client
    pointer wouldn't return the paired keyboard anymore.
    
    The final effect is that gtkplug-x11 wasn't setting a keyboard to
    its generated events.
    8fdd8dbc
gdkdevice.c 48 KB