Allow any combo of Ctrl+Mod1, Ctrl+Mod2 or Mod1+Mod2 to release grab

This commit is contained in:
Daniel P. Berrange 2007-02-20 12:26:58 -05:00
parent f59c2a908c
commit 7f9eba6c4d

View File

@ -479,7 +479,10 @@ class GRFBViewer(gtk.DrawingArea):
def key_press(self, win, event):
# Allow Ctrl+Alt+Esc to break the pointer grab
if self.will_autograb_pointer():
if event.state & gtk.gdk.CONTROL_MASK and event.state & gtk.gdk.MOD1_MASK and gtk.gdk.pointer_is_grabbed():
if ((event.state & gtk.gdk.CONTROL_MASK and event.state & gtk.gdk.MOD1_MASK) or \
(event.state & gtk.gdk.MOD2_MASK and event.state & gtk.gdk.MOD1_MASK) or \
(event.state & gtk.gdk.CONTROL_MASK and event.state & gtk.gdk.MOD2_MASK)) and \
gtk.gdk.pointer_is_grabbed():
self.ungrab_pointer()
return