Index: src/roster_window.py =================================================================== --- src/roster_window.py (revision 10411) +++ src/roster_window.py (working copy) @@ -1004,9 +1004,11 @@ if gajim.config.get('show_tunes_in_roster') \ and (gajim.connections[account].tune.has_key('artist') \ or gajim.connections[account].tune.has_key('title')): + prefix = os.path.join(gajim.DATA_DIR, 'emoticons') + prefix = os.path.join(prefix, 'static') + path = os.path.join(prefix, 'music.png') self.model[child_iter][C_TUNE_PIXBUF] = \ - gtk.gdk.pixbuf_new_from_file( - '../data/emoticons/static/music.png') + gtk.gdk.pixbuf_new_from_file(path) else: self.model[child_iter][C_TUNE_PIXBUF] = None @@ -1260,8 +1262,11 @@ jid = jid.decode('utf-8') contact = gajim.contacts.get_contact(account, jid) if contact.tune.has_key('artist') or contact.tune.has_key('title'): - pixbuf = gtk.gdk.pixbuf_new_from_file( - '../data/emoticons/static/music.png') + prefix = os.path.join(gajim.DATA_DIR, 'emoticons') + prefix = os.path.join(prefix, 'static') + path = os.path.join(prefix, 'music.png') + self.model[child_iter][C_TUNE_PIXBUF] = \ + gtk.gdk.pixbuf_new_from_file(path) else: pixbuf = None for child_iter in iters: Index: src/conversation_textview.py =================================================================== --- src/conversation_textview.py (revision 10411) +++ src/conversation_textview.py (working copy) @@ -1256,6 +1256,7 @@ buffer.insert_with_tags_by_name(end_iter, format, *name_tags) def print_subject(self, subject): + return if subject: # if we have subject, show it too! subject = _('Subject: %s\n') % subject buffer = self.tv.get_buffer() Index: src/common/configpaths.py =================================================================== --- src/common/configpaths.py (revision 10411) +++ src/common/configpaths.py (working copy) @@ -114,7 +114,8 @@ for n, p in zip(k, v): self.add_from_root(n, p) - self.add('DATA', os.path.join(u'..', windowsify(u'data'))) + datadir = fse(os.environ[u'datadir']) + self.add('DATA', os.path.join(datadir, windowsify(u'data'))) self.add('HOME', fse(os.path.expanduser('~'))) self.add('TMP', fse(tempfile.gettempdir())) Index: src/common/caps.py =================================================================== --- src/common/caps.py (revision 10411) +++ src/common/caps.py (working copy) @@ -209,8 +209,11 @@ # likely implement a fallback to disco (could be disabled # for mobile users who pay for traffic) if contact.caps_hash_method == 'old': - features = self[(contact.caps_hash_method, contact.caps_node + '#' + \ - contact.caps_hash)].features + try: + features = self[(contact.caps_hash_method, contact.caps_node + '#' + \ + contact.caps_hash)].features + except: + features = [] else: features = self[(contact.caps_hash_method, contact.caps_hash)].features if feature in features or features == []: Index: src/chat_control.py =================================================================== --- src/chat_control.py (revision 10411) +++ src/chat_control.py (working copy) @@ -232,6 +232,9 @@ # add MessageTextView to UI and connect signals self.msg_scrolledwindow = self.xml.get_widget('message_scrolledwindow') self.msg_textview = MessageTextView() + message_buffer = self.msg_textview.get_buffer() + message_buffer.connect('changed', + self._on_message_textview_buffer_changed) id = self.msg_textview.connect('mykeypress', self._on_message_textview_mykeypress_event) self.handlers[id] = self.msg_textview @@ -466,6 +469,14 @@ gajim.interface.emoticons_menu.popup(None, None, set_emoticons_menu_position, 1, 0) + def _on_message_textview_buffer_changed(self,widget): + charcount_label = self.xml.get_widget('charcount_label') + if not charcount_label is None: + charcount_label.set_label("%i" % widget.get_char_count()) + return False + else: + return False + def _on_message_textview_key_press_event(self, widget, event): if self.widget_name == 'muc_child_vbox': if event.keyval not in (gtk.keysyms.ISO_Left_Tab, gtk.keysyms.Tab): Index: scripts/gajim.in =================================================================== --- scripts/gajim.in (revision 10411) +++ scripts/gajim.in (working copy) @@ -26,7 +26,7 @@ exit 1 fi -datadir=@DATADIR@ +export datadir=@DATADIR@ PYTHON_EXEC=@PYTHON@ cd ${datadir}/gajim/src Index: data/glade/message_window.glade =================================================================== --- data/glade/message_window.glade (revision 10411) +++ data/glade/message_window.glade (working copy) @@ -195,6 +195,19 @@ 1 + + + True + 0 + GTK_JUSTIFY_RIGHT + 5 + True + + + False + 10 + + False Index: config.h.in =================================================================== --- config.h.in (revision 10411) +++ config.h.in (working copy) @@ -63,10 +63,6 @@ /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ -#undef LT_OBJDIR - /* Name of package */ #undef PACKAGE