notify.py update

This commit is contained in:
lilydjwg 2013-05-30 00:15:02 +08:00
parent 4eb8eac856
commit 4120bcb28c

View file

@ -13,8 +13,8 @@ NOTIFY_URGENCY_NORMAL = 1
NOTIFY_URGENCY_CRITICAL = 2 NOTIFY_URGENCY_CRITICAL = 2
UrgencyLevel = {NOTIFY_URGENCY_LOW, NOTIFY_URGENCY_NORMAL, NOTIFY_URGENCY_CRITICAL} UrgencyLevel = {NOTIFY_URGENCY_LOW, NOTIFY_URGENCY_NORMAL, NOTIFY_URGENCY_CRITICAL}
libnotify = CDLL('libnotify.so') libnotify = None
gobj = CDLL('libgobject-2.0.so') gobj = None
libnotify_lock = Lock() libnotify_lock = Lock()
libnotify_inited = False libnotify_inited = False
@ -61,10 +61,16 @@ def set_urgency(self, urgency):
libnotify.notify_notification_set_urgency(notify_st.notify, urgency) libnotify.notify_notification_set_urgency(notify_st.notify, urgency)
def init(): def init():
global libnotify_inited global libnotify_inited, libnotify, gobj
if libnotify_inited: if libnotify_inited:
return return
try:
libnotify = CDLL('libnotify.so')
except OSError:
libnotify = CDLL('libnotify.so.4')
gobj = CDLL('libgobject-2.0.so')
libnotify.notify_init('pynotify') libnotify.notify_init('pynotify')
libnotify_inited = True libnotify_inited = True
notify_st.notify = libnotify.notify_notification_new( notify_st.notify = libnotify.notify_notification_new(