Show own mood in account row.
This commit is contained in:
parent
6fe329d005
commit
d694b8a6df
|
@ -62,6 +62,9 @@ def user_mood(items, name, jid):
|
|||
if contact.mood.has_key('text'):
|
||||
del contact.mood['text']
|
||||
|
||||
if jid == gajim.get_jid_from_account(name):
|
||||
gajim.interface.roster.draw_account(name)
|
||||
else:
|
||||
gajim.interface.roster.draw_mood(user, name)
|
||||
ctrl = gajim.interface.msg_win_mgr.get_control(user, name)
|
||||
if ctrl:
|
||||
|
|
|
@ -973,6 +973,20 @@ class RosterWindow:
|
|||
account_name += ' (%s/%s)' % (repr(nbr_on), repr(nbr_total))
|
||||
|
||||
self.model[child_iter][C_NAME] = account_name
|
||||
|
||||
if gajim.connections[account].mood.has_key('mood') \
|
||||
and gajim.connections[account].mood['mood'] in MOODS:
|
||||
self.model[child_iter][C_MOOD_PIXBUF] = \
|
||||
gtkgui_helpers.load_mood_icon(
|
||||
gajim.connections[account].mood['mood']). \
|
||||
get_pixbuf()
|
||||
elif gajim.connections[account].mood.has_key('mood'):
|
||||
self.model[child_iter][C_MOOD_PIXBUF] = \
|
||||
gtkgui_helpers.load_mood_icon('unknown'). \
|
||||
get_pixbuf()
|
||||
else:
|
||||
self.model[child_iter][C_MOOD_PIXBUF] = None
|
||||
|
||||
return False
|
||||
|
||||
def draw_group(self, group, account):
|
||||
|
@ -4192,7 +4206,7 @@ class RosterWindow:
|
|||
'''When a row is added, set properties for avatar renderer'''
|
||||
theme = gajim.config.get('roster_theme')
|
||||
type_ = model[titer][C_TYPE]
|
||||
if type_ in ('group', 'account'):
|
||||
if type_ == 'group':
|
||||
renderer.set_property('visible', False)
|
||||
return
|
||||
|
||||
|
@ -4201,25 +4215,43 @@ class RosterWindow:
|
|||
renderer.set_property('visible', True)
|
||||
else:
|
||||
renderer.set_property('visible', False)
|
||||
if type_: # prevent type_ = None, see http://trac.gajim.org/ticket/2534
|
||||
if not model[titer][C_JID] or not model[titer][C_ACCOUNT]:
|
||||
if type_ == 'account':
|
||||
color = gajim.config.get_per('themes', theme,
|
||||
'accountbgcolor')
|
||||
if color:
|
||||
renderer.set_property('cell-background', color)
|
||||
else:
|
||||
self.set_renderer_color(renderer,
|
||||
gtk.STATE_ACTIVE
|
||||
# align pixbuf to the right)
|
||||
renderer.set_property('xalign', 1)
|
||||
# prevent type_ = None, see http://trac.gajim.org/ticket/2534
|
||||
elif type_:
|
||||
if not model[titer][C_JID] \
|
||||
or not model[titer][C_ACCOUNT]:
|
||||
# This can append at the moment we add the row
|
||||
return
|
||||
jid = model[titer][C_JID].decode('utf-8')
|
||||
account = model[titer][C_ACCOUNT].decode('utf-8')
|
||||
if jid in gajim.newly_added[account]:
|
||||
renderer.set_property('cell-background', gajim.config.get(
|
||||
renderer.set_property('cell-background',
|
||||
gajim.config.get(
|
||||
'just_connected_bg_color'))
|
||||
elif jid in gajim.to_be_removed[account]:
|
||||
renderer.set_property('cell-background', gajim.config.get(
|
||||
renderer.set_property('cell-background',
|
||||
gajim.config.get(
|
||||
'just_disconnected_bg_color'))
|
||||
else:
|
||||
color = gajim.config.get_per('themes', theme, 'contactbgcolor')
|
||||
color = gajim.config.get_per('themes',
|
||||
theme, 'contactbgcolor')
|
||||
if color:
|
||||
renderer.set_property('cell-background', color)
|
||||
renderer.set_property(
|
||||
'cell-background', color)
|
||||
else:
|
||||
renderer.set_property('cell-background', None)
|
||||
renderer.set_property('xalign', 1) # align pixbuf to the right
|
||||
renderer.set_property(
|
||||
'cell-background', None)
|
||||
# align pixbuf to the right
|
||||
renderer.set_property('xalign', 1)
|
||||
|
||||
|
||||
def _fill_avatar_pixbuf_rederer(self, column, renderer, model, titer,
|
||||
|
|
Loading…
Reference in New Issue