Ticket #268: browse.patch

File browse.patch, 1.7 KB (added by dsd, 15 years ago)

possible patch

  • webactivity.py

    From: Daniel Drake <dsd@laptop.org>
    
    Populate intl.accept_languages config option based on LANG environment
    variable.
    
    old new  
    7171import hulahop
    7272hulahop.set_app_version(os.environ['SUGAR_BUNDLE_VERSION'])
    7373hulahop.startup(_profile_path)
     74from xpcom import components
    7475
    7576from browser import Browser
    7677from edittoolbar import EditToolbar
     
    106107
    107108        self._browser = Browser()
    108109
     110        self._set_accept_languages()
     111
    109112        temp_path = os.path.join(self.get_activity_root(), 'instance')
    110113        downloadmanager.init(self._browser, self, temp_path)
    111114        sessionhistory.init(self._browser)
     
    186189        else:   
    187190            _logger.debug('Created activity')
    188191   
     192    def _set_accept_languages(self):
     193        try:
     194            lang = os.environ['LANG'] # e.g. es_UY.UTF-8
     195        except:
     196            return
     197
     198        if len(lang) != 11:
     199            _logger.debug("bad LANG length")
     200            return
     201
     202        if not lang.endswith(".UTF-8") or lang[2] != "_":
     203            _logger.debug("unrecognised LANG format")
     204            return
     205       
     206        # e.g. es-uy, es
     207        pref = lang[0:2] + "-" + lang[3:5].lower()  + ", " + lang[0:2]
     208
     209        cls = components.classes["@mozilla.org/preferences-service;1"]
     210        prefService = cls.getService(components.interfaces.nsIPrefService)
     211        branch = prefService.getBranch('')
     212        branch.setCharPref('intl.accept_languages', pref)
     213
    189214    def _shared_cb(self, activity_):
    190215        _logger.debug('My activity was shared')       
    191216        self.initiating = True