diff --git a/src/config.py b/src/config.py index 170121acb523ced64866b5fc7d3835e915645aaa..dd8e7bce3871c2be7f419c244c73d9c84433eb5d 100644 --- a/src/config.py +++ b/src/config.py @@ -620,7 +620,23 @@ class PreferencesWindow: gajim.config.set('use_speller', active) gajim.interface.save_config() if active: - self.apply_speller() + lang = gajim.config.get('speller_language') + if not lang: + lang = gajim.LANG + tv = gtk.TextView() + try: + spell = gtkspell.Spell(tv, lang) + except: + dialogs.ErrorDialog( + _('Dictionary for lang %s not available') % lang, + _('You have to install %s dictionary to use spellchecking, or ' + 'choose another language by setting the speller_language option.' + ) % lang) + gajim.config.set('use_speller', False) + widget.set_active(False) + else: + gajim.config.set('speller_language', lang) + self.apply_speller() else: self.remove_speller() @@ -2239,7 +2255,7 @@ class RemoveAccountWindow: self.window = xml.get_widget('remove_account_window') self.window.set_transient_for(gajim.interface.roster.window) self.remove_and_unregister_radiobutton = xml.get_widget( - 'remove_and_unregister_radiobutton') + 'remove_and_unregister_radiobutton') self.window.set_title(_('Removing %s account') % self.account) xml.signal_autoconnect(self) self.window.show_all() diff --git a/src/gajim.py b/src/gajim.py index 8fa3d1c765451d197eb4e8d7bcbb3800bf17aa0a..73d865cecdbd0fc6fad34421d980f3457f947d78 100755 --- a/src/gajim.py +++ b/src/gajim.py @@ -1923,6 +1923,21 @@ class Interface: # get transports type from DB gajim.transport_type = gajim.logger.get_transports_type() + # test is dictionnary is present for speller + if gajim.config.get('use_speller'): + lang = gajim.config.get('speller_language') + if not lang: + lang = gajim.LANG + tv = gtk.TextView() + try: + spell = gtkspell.Spell(tv, lang) + except: + dialogs.ErrorDialog( + _('Dictionary for lang %s not available') % lang, + _('You have to install %s dictionary to use spellchecking, or ' + 'choose another language by setting the speller_language option.' + ) % lang) + gajim.config.set('use_speller', False) gobject.timeout_add(100, self.autoconnect) gobject.timeout_add(200, self.process_connections) gobject.timeout_add(500, self.read_sleepy)