diff -Nru ubufox-2.0.2/components/aboutStartpage.js ubufox-2.0.3/components/aboutStartpage.js --- ubufox-2.0.2/components/aboutStartpage.js 2012-04-20 15:06:12.000000000 +0000 +++ ubufox-2.0.3/components/aboutStartpage.js 2012-04-20 15:42:45.000000000 +0000 @@ -41,64 +41,18 @@ Components.utils.import("resource://gre/modules/XPCOMUtils.jsm"); Components.utils.import("resource://gre/modules/Services.jsm"); -var HOMEPAGE_OFFLINE = "file:///usr/share/ubuntu-artwork/home/index.html"; -var HOMEPAGE_OFFLINE_TMPL = "/usr/share/ubuntu-artwork/home/locales/index-" +var HOMEPAGE_PREFIX = "http://start.ubuntu.com/"; +var HOMEPAGE_GOOGLE_QUERY = "sourceid=hp"; -var HOMEPAGE_ONLINE_PREFIX = "http://start.ubuntu.com/"; -var HOMEPAGE_ONLINE_EXTRA = "sourceid=hp" - -function getIsOffline() { - var ios = Cc["@mozilla.org/network/io-service;1"] - .getService(Ci.nsIIOService); - return ios.offline; -} - -function getUALocale() { - var prefs = Cc["@mozilla.org/preferences-service;1"] - .getService(Ci.nsIPrefBranch); - - var userAgentLocale = null; +function getCurrentSearchEngineParams() { try { - var userAgentLocaleLocalized = null; - - try { - userAgentLocaleLocalized = prefs.getComplexValue("general.useragent.locale", - Ci.nsIPrefLocalizedString); - } catch (e) {} - - if (userAgentLocaleLocalized) { - userAgentLocale = userAgentLocaleLocalized.toString(); + if (Services.search.currentEngine.searchForm.indexOf("search.yahoo.com") + != -1) { + return {"name": "Yahoo", "query": null}; } else { - userAgentLocale = prefs.getCharPref("general.useragent.locale"); + return {"name": "Google", "query": HOMEPAGE_GOOGLE_QUERY}; } - } catch (e) { userAgentLocale = "en-US";} - - return userAgentLocale; -} - -function get_valid_offlinehomepage() { - var userAgentLocale = getUALocale(); - var canonicalLangCode = userAgentLocale.replace("-","_"); - - var preferredHomepage = HOMEPAGE_OFFLINE_TMPL + canonicalLangCode + ".html"; - - var file = Components.classes['@mozilla.org/file/local;1'] - .createInstance(Components.interfaces.nsILocalFile); - - file.initWithPath(preferredHomepage); - - if (!file.exists()) - return HOMEPAGE_OFFLINE; - - return "file://" + preferredHomepage; - return preferredHomepage; -} - -function getCurrentSearchEngineName () { - var searchService = Cc["@mozilla.org/browser/search-service;1"] - .getService (Ci.nsIBrowserSearchService); - var defaultEngine = searchService.currentEngine; - return defaultEngine.name; + } catch(e) { return {"name": "Google", "query": HOMEPAGE_GOOGLE_QUERY}; } } function AboutStartpage() {} @@ -114,32 +68,28 @@ }, newChannel: function(aURI) { - var ios = Cc["@mozilla.org/network/io-service;1"]. - getService(Ci.nsIIOService); - - var secMan = Cc["@mozilla.org/scriptsecuritymanager;1"]. + let secMan = Cc["@mozilla.org/scriptsecuritymanager;1"]. getService(Ci.nsIScriptSecurityManager); - var principal = secMan.getCodebasePrincipal(aURI); + let principal = secMan.getCodebasePrincipal(aURI); + + let params = getCurrentSearchEngineParams(); + let release = Services.prefs.getCharPref("extensions.ubufox.release"); - if (!getIsOffline()) { - let searchEngineName = getCurrentSearchEngineName(); - let release = Services.prefs.getCharPref("extensions.ubufox.release"); - var uri; - // allow defaults packages to overwrite the homepage - try { - uri = Services.prefs.getCharPref("extensions.ubufox@ubuntu.com.custom_homepage"); - } catch(e) { - uri = HOMEPAGE_ONLINE_PREFIX + release + "/" + searchEngineName + "/?" + HOMEPAGE_ONLINE_EXTRA; + let uri; + // allow defaults packages to overwrite the homepage + try { + uri = Services.prefs.getCharPref("extensions.ubufox@ubuntu.com.custom_homepage"); + } catch(e) { + uri = HOMEPAGE_PREFIX + release + "/" + params.name + "/"; + if (params.query != null) { + uri += "?" + params.query; } - let channel = ios.newChannel(uri, null, null); - channel.originalURI = aURI; - channel.owner = principal; - return channel; } - let channel = ios.newChannel(HOMEPAGE_OFFLINE, null, null); -// channel.originalURI = aURI; + let channel = Services.io.newChannel(uri, null, null); + channel.originalURI = aURI; channel.owner = principal; + return channel; } }; diff -Nru ubufox-2.0.2/debian/changelog ubufox-2.0.3/debian/changelog --- ubufox-2.0.2/debian/changelog 2012-04-20 15:12:34.000000000 +0000 +++ ubufox-2.0.3/debian/changelog 2012-04-25 12:29:29.000000000 +0000 @@ -1,3 +1,15 @@ +ubufox (2.0.3-0ubuntu1) precise-proposed; urgency=low + + * New upstream release v2.0.3 + - Drop the offline startpage fallback. ubuntu-docs hasn't provided the + fallback homepage for a while now, leaving this feature completely broken + - Fix selection of appropriate startpage variant by not relying on + translated strings + - Fix LP: #988283 - Drop extra parameter from startpage URL when the + default search provider is Yahoo + + -- Chris Coulson Wed, 25 Apr 2012 12:56:22 +0100 + ubufox (2.0.2-0ubuntu1) precise; urgency=low * New upstream release v2.0.2 diff -Nru ubufox-2.0.2/install.rdf ubufox-2.0.3/install.rdf --- ubufox-2.0.2/install.rdf 2012-04-20 15:09:49.000000000 +0000 +++ ubufox-2.0.3/install.rdf 2012-04-25 11:53:00.000000000 +0000 @@ -5,7 +5,7 @@ ubufox@ubuntu.com true Ubuntu Firefox Modifications - 2.0.2 + 2.0.3 Canonical Ltd. Alexander Sack <asac@ubuntu.com> Sasa Bodiroza <jazzva@gmail.com>