make the cursor invisible when showing bigger avatar; make it visible on mouse move
This commit is contained in:
parent
77cb852057
commit
01e09ce9b1
|
@ -295,3 +295,9 @@ def get_pixbuf_from_data(file_data):
|
||||||
pixbuf = None
|
pixbuf = None
|
||||||
|
|
||||||
return pixbuf
|
return pixbuf
|
||||||
|
|
||||||
|
def get_invisible_cursor():
|
||||||
|
pixmap = gtk.gdk.Pixmap(None, 1, 1, 1)
|
||||||
|
color = gtk.gdk.Color()
|
||||||
|
cursor = gtk.gdk.Cursor(pixmap, pixmap, color, color, 0, 0)
|
||||||
|
return cursor
|
||||||
|
|
|
@ -172,13 +172,35 @@ class TabbedChatWindow(chat.Chat):
|
||||||
window.add(image)
|
window.add(image)
|
||||||
|
|
||||||
window.set_position(gtk.WIN_POS_MOUSE)
|
window.set_position(gtk.WIN_POS_MOUSE)
|
||||||
|
# we should make the cursor visible
|
||||||
|
# gtk+ doesn't make use of the motion notify on gtkwindow by default
|
||||||
|
# so this line adds that
|
||||||
|
window.set_events(gtk.gdk.POINTER_MOTION_MASK)
|
||||||
|
window.realize()
|
||||||
|
|
||||||
|
# make the cursor invisible so we can see the image
|
||||||
|
invisible_cursor = gtkgui_helpers.get_invisible_cursor()
|
||||||
|
window.window.set_cursor(invisible_cursor)
|
||||||
|
|
||||||
|
# we should hide the window
|
||||||
|
window.connect('leave_notify_event',
|
||||||
|
self.on_window_avatar_leave_notify_event)
|
||||||
|
|
||||||
|
|
||||||
|
window.connect('motion-notify-event',
|
||||||
|
self.on_window_motion_notify_event)
|
||||||
|
|
||||||
window.show_all()
|
window.show_all()
|
||||||
window.connect('leave_notify_event', self.on_window_avatar_leave_notify_event)
|
|
||||||
|
|
||||||
def on_window_avatar_leave_notify_event(self, widget, event):
|
def on_window_avatar_leave_notify_event(self, widget, event):
|
||||||
'''we just left the popup window that holds avatar'''
|
'''we just left the popup window that holds avatar'''
|
||||||
self.bigger_avatar_window.hide()
|
self.bigger_avatar_window.hide()
|
||||||
|
|
||||||
|
def on_window_motion_notify_event(self, widget, event):
|
||||||
|
'''we just moved the mouse so show the cursor'''
|
||||||
|
cursor = gtk.gdk.Cursor(gtk.gdk.LEFT_PTR)
|
||||||
|
self.bigger_avatar_window.window.set_cursor(cursor)
|
||||||
|
|
||||||
def draw_widgets(self, contact):
|
def draw_widgets(self, contact):
|
||||||
'''draw the widgets in a tab (f.e. gpg togglebutton)
|
'''draw the widgets in a tab (f.e. gpg togglebutton)
|
||||||
according to the the information in the contact variable'''
|
according to the the information in the contact variable'''
|
||||||
|
|
Loading…
Reference in New Issue