diff options
author | Huang Peng <shawn.p.huang@gmail.com> | 2008-10-05 22:23:42 +0800 |
---|---|---|
committer | Huang Peng <shawn.p.huang@gmail.com> | 2008-10-05 22:23:42 +0800 |
commit | 8a4eb40abff0441c015f15fa864967e106868f52 (patch) | |
tree | 6cd438cf647e185bf71ed3490760184b928c7001 /ui | |
parent | 3d36b0eb76eafcda76082baecf34a48d6cbb0319 (diff) | |
download | ibus-8a4eb40abff0441c015f15fa864967e106868f52.tar.gz ibus-8a4eb40abff0441c015f15fa864967e106868f52.tar.xz ibus-8a4eb40abff0441c015f15fa864967e106868f52.zip |
Move notify from daemon to ui/gtk
Diffstat (limited to 'ui')
-rw-r--r-- | ui/gtk/notify.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/ui/gtk/notify.py b/ui/gtk/notify.py new file mode 100644 index 0000000..3274f7d --- /dev/null +++ b/ui/gtk/notify.py @@ -0,0 +1,46 @@ +# vim:set et sts=4 sw=4: +# +# ibus - The Input Bus +# +# Copyright (c) 2007-2008 Huang Peng <shawn.p.huang@gmail.com> +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this program; if not, write to the +# Free Software Foundation, Inc., 59 Temple Place, Suite 330, +# Boston, MA 02111-1307 USA + +import dbus + +try: + __bus = dbus.SessionBus() + __notify = __bus.get_object("org.freedesktop.Notifications", "/org/freedesktop/Notifications") +except: + import traceback + traceback.print_exc() + __notify = None + +__ignore_ids = set([]) + +def Notify(id, summary, body, icon): + if id in __ignore_ids: + return + if __notify == None: + return + if icon == None: + icon = "ibus" + __notify.Notify("ibus", dbus.UInt32(id), icon, summary, body, \ + ["Do not show it again", "Do not show it again"], \ + dbus.Dictionary({"x" :100, "y" : 100}, signature="sv"), 5000) + +if __name__ == "__main__": + Notify(1, "A", "B", None) |