X-Git-Url: http://git.maemo.org/git/?p=python-purple;a=blobdiff_plain;f=nullclient-ecore.py;h=c38efa434e955daa8c88e65d065bdda41d1d2f9d;hp=207d42d3726cf080ccf40496bacd5a1500b340a9;hb=1d72d3b93d21d88f1a0a9589124a2fbbdaa4338e;hpb=8a65818786ccf9442ed68927ddb9922465a424b4 diff --git a/nullclient-ecore.py b/nullclient-ecore.py index 207d42d..c38efa4 100644 --- a/nullclient-ecore.py +++ b/nullclient-ecore.py @@ -25,8 +25,8 @@ cbs["account"] = acc_cbs def blist_callback(name): print "---- blist callback example: %s" % name -blist_cbs["new_list"] = blist_callback -blist_cbs["new_node"] = blist_callback +#blist_cbs["new_list"] = blist_callback +#blist_cbs["new_node"] = blist_callback blist_cbs["show"] = blist_callback #blist_cbs["update"] = blist_callback blist_cbs["remove"] = blist_callback @@ -220,7 +220,7 @@ class NullClientPurple: def __init__(self): self.p = purple.Purple(debug_enabled=False) self.window = MainWindow(self.quit) - self.buddies = [] + self.buddies = [] #online buddies self.account = None self.protocol = None self.username = "carmanplugintest@gmail.com" @@ -229,7 +229,7 @@ class NullClientPurple: global cbs global signal_cbs - cbs["blist"]["update"] = self._purple_blist_new_cb + cbs["blist"]["update"] = self._purple_update_blist_cb signal_cbs["buddy_signed_off"] = self._purple_signal_sign_off_cb self.p.purple_init(cbs) @@ -237,13 +237,13 @@ class NullClientPurple: self.window.add_bt_conn_cb(self.connect) self.window.init_window() - def _purple_blist_new_cb(self, pointer): - """ FIXME: Hack! to fill blist on UI """ - buddies = self.account.get_buddies_online() - for i in buddies: - if i not in self.buddies: - self.buddies.append(i) - self.window.new_buddy(i) + def _purple_update_blist_cb(self, type, name=None, totalsize=None,\ + currentsize=None, online=None): + self.buddies = self.account.get_buddies_online() + if type == 2: + if name in self.buddies: + self.buddies.append(name) + self.window.new_buddy(name) def _purple_signal_sign_off_cb(self, name, bname): self.buddies.remove(bname)