quick_frontend, primitivus (contact_list): ContactList widget must now call postInit() when ready, to avoid being registered before being constructed

This commit is contained in:
Goffi 2016-07-24 17:56:18 +02:00
commit 9456417949
2 changed files with 5 additions and 1 deletions

View file

@ -51,6 +51,7 @@ class ContactList(PrimitivusWidget, QuickContactList):
urwid.connect_signal(self, 'change', on_change, user_data)
self.host.addListener('notification', self.onNotification, [self.profile])
self.host.addListener('notificationsClear', self.onNotification, [self.profile])
self.postInit()
def update(self, entities=None, type_=None, profile=None):
"""Update display, keep focus"""

View file

@ -821,7 +821,6 @@ class QuickContactList(QuickWidget):
def __init__(self, host, profiles):
super(QuickContactList, self).__init__(host, None, profiles)
handler.register(self)
# options
# for next values, None means use indivual value per profile
@ -831,6 +830,10 @@ class QuickContactList(QuickWidget):
self.show_resources = None # TODO
self.show_status = None # TODO
def postInit(self):
"""Method to be called by frontend after widget is initialised"""
handler.register(self)
@property
def items(self):
return handler.items