ChatstatePlugin. gtk3 support

This commit is contained in:
Denis Fomin
2013-01-27 12:35:20 +04:00
parent 0b495e091d
commit f4ad05a45a
3 changed files with 9 additions and 9 deletions

View File

@@ -1 +1 @@
from chatstate import ChatstatePlugin from .chatstate import ChatstatePlugin

View File

@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
## ##
import gobject from gi.repository import GObject
from plugins import GajimPlugin from plugins import GajimPlugin
from plugins.helpers import log_calls from plugins.helpers import log_calls
@@ -21,11 +21,11 @@ def paragraph_direction_mark(text):
for char in text: for char in text:
bidi = unicodedata.bidirectional(char) bidi = unicodedata.bidirectional(char)
if bidi == 'L': if bidi == 'L':
return u'\u200E' return '\u200E'
elif bidi == 'AL' or bidi == 'R': elif bidi == 'AL' or bidi == 'R':
return u'\u200F' return '\u200F'
return u'\u200E' return '\u200E'
class ChatstatePlugin(GajimPlugin): class ChatstatePlugin(GajimPlugin):
@@ -57,7 +57,7 @@ class ChatstatePlugin(GajimPlugin):
child_iters = gajim.interface.roster._get_contact_iter(obj.jid, child_iters = gajim.interface.roster._get_contact_iter(obj.jid,
obj.conn.name, contact, self.model) obj.conn.name, contact, self.model)
name = gobject.markup_escape_text(contact.get_shown_name()) name = GObject.markup_escape_text(contact.get_shown_name())
contact_instances = gajim.contacts.get_contacts(obj.conn.name, contact_instances = gajim.contacts.get_contacts(obj.conn.name,
contact.jid) contact.jid)
@@ -68,7 +68,7 @@ class ChatstatePlugin(GajimPlugin):
nb_connected_contact += 1 nb_connected_contact += 1
if nb_connected_contact > 1: if nb_connected_contact > 1:
name += paragraph_direction_mark(unicode(name)) name += paragraph_direction_mark(unicode(name))
name += u' (%d)' % nb_connected_contact name += ' (%d)' % nb_connected_contact
for child_iter in child_iters: for child_iter in child_iters:
if chatstate != 'gone': if chatstate != 'gone':
@@ -82,7 +82,7 @@ class ChatstatePlugin(GajimPlugin):
max_lines=1) max_lines=1)
name += '\n<span size="small" style="italic" ' \ name += '\n<span size="small" style="italic" ' \
'foreground="%s">%s</span>' % (self.status_color, 'foreground="%s">%s</span>' % (self.status_color,
gobject.markup_escape_text(status)) GObject.markup_escape_text(status))
self.model[child_iter][1] = name self.model[child_iter][1] = name
@log_calls('ChatstatePlugin') @log_calls('ChatstatePlugin')

View File

@@ -7,4 +7,4 @@ description: Chat State Notifications in roster.
The plugin does not work if you use custom font color for contacts in roster. The plugin does not work if you use custom font color for contacts in roster.
authors = Denis Fomin <fominde@gmail.com> authors = Denis Fomin <fominde@gmail.com>
homepage = http://trac-plugins.gajim.org/wiki/ChatstatePlugin homepage = http://trac-plugins.gajim.org/wiki/ChatstatePlugin
max_gajim_version: 0.15.9 min_gajim_version: 0.15.10