Backed out changeset f4a2094a00c5 (bug 1437942) as requested by pascalc. a=backout
authorNarcis Beleuzu <nbeleuzu@mozilla.com>
Wed, 06 Jun 2018 10:57:52 +0300
changeset 804581 78c1a9ad32c674dc272490993c7ec5a259ac84f5
parent 804493 da28b92efe6f6acaf79545697415b82038143338
child 804582 715e3f81f67c5fb9f9810fd80690b429888ae86e
push id112415
push userbmo:kanika16047@iiitd.ac.in
push dateWed, 06 Jun 2018 10:16:10 +0000
reviewersbackout
bugs1437942
milestone62.0a1
backs outf4a2094a00c5afbc6571bfc38f3e0e8c4b550b7d
Backed out changeset f4a2094a00c5 (bug 1437942) as requested by pascalc. a=backout
browser/base/content/test/static/browser_all_files_referenced.js
browser/base/jar.mn
browser/components/search/content/search.xml
browser/components/search/jar.mn
browser/components/search/searchplugins/allaannonser-sv-SE.xml
browser/components/search/searchplugins/allegro-pl.xml
browser/components/search/searchplugins/amazon-au.xml
browser/components/search/searchplugins/amazon-br.xml
browser/components/search/searchplugins/amazon-ca.xml
browser/components/search/searchplugins/amazon-en-GB.xml
browser/components/search/searchplugins/amazon-france.xml
browser/components/search/searchplugins/amazon-in.xml
browser/components/search/searchplugins/amazon-it.xml
browser/components/search/searchplugins/amazon-jp.xml
browser/components/search/searchplugins/amazon-mx.xml
browser/components/search/searchplugins/amazon-nl.xml
browser/components/search/searchplugins/amazondotcn.xml
browser/components/search/searchplugins/amazondotcom-de.xml
browser/components/search/searchplugins/amazondotcom.xml
browser/components/search/searchplugins/atlas-sk.xml
browser/components/search/searchplugins/azerdict.xml
browser/components/search/searchplugins/azet-sk.xml
browser/components/search/searchplugins/baidu.xml
browser/components/search/searchplugins/bbc-alba.xml
browser/components/search/searchplugins/bing.xml
browser/components/search/searchplugins/bok-NO.xml
browser/components/search/searchplugins/bolcom-fy-NL.xml
browser/components/search/searchplugins/bolcom-nl.xml
browser/components/search/searchplugins/bookplus-fi.xml
browser/components/search/searchplugins/buscape.xml
browser/components/search/searchplugins/ceneji.xml
browser/components/search/searchplugins/chambers-en-GB.xml
browser/components/search/searchplugins/cnrtl-tlfi-fr.xml
browser/components/search/searchplugins/coccoc.xml
browser/components/search/searchplugins/danawa-kr.xml
browser/components/search/searchplugins/daum-kr.xml
browser/components/search/searchplugins/ddg.xml
browser/components/search/searchplugins/diccionariu-alla.xml
browser/components/search/searchplugins/dict-enlv.xml
browser/components/search/searchplugins/diec2.xml
browser/components/search/searchplugins/drae.xml
browser/components/search/searchplugins/ebay-at.xml
browser/components/search/searchplugins/ebay-au.xml
browser/components/search/searchplugins/ebay-be.xml
browser/components/search/searchplugins/ebay-ca.xml
browser/components/search/searchplugins/ebay-ch.xml
browser/components/search/searchplugins/ebay-de.xml
browser/components/search/searchplugins/ebay-es.xml
browser/components/search/searchplugins/ebay-fr.xml
browser/components/search/searchplugins/ebay-ie.xml
browser/components/search/searchplugins/ebay-it.xml
browser/components/search/searchplugins/ebay-nl.xml
browser/components/search/searchplugins/ebay-uk.xml
browser/components/search/searchplugins/ebay.xml
browser/components/search/searchplugins/ecosia.xml
browser/components/search/searchplugins/eki-ee.xml
browser/components/search/searchplugins/elebila.xml
browser/components/search/searchplugins/eudict.xml
browser/components/search/searchplugins/faclair-beag.xml
browser/components/search/searchplugins/flip.xml
browser/components/search/searchplugins/freelang.xml
browser/components/search/searchplugins/google-2018.xml
browser/components/search/searchplugins/google.xml
browser/components/search/searchplugins/gujaratilexicon.xml
browser/components/search/searchplugins/gulesider-NO.xml
browser/components/search/searchplugins/heureka-cz.xml
browser/components/search/searchplugins/hoepli.xml
browser/components/search/searchplugins/hotline-ua.xml
browser/components/search/searchplugins/images/amazon.ico
browser/components/search/searchplugins/images/ebay.ico
browser/components/search/searchplugins/images/wikipedia.ico
browser/components/search/searchplugins/images/yandex-en.ico
browser/components/search/searchplugins/images/yandex-ru.ico
browser/components/search/searchplugins/kannadastore.xml
browser/components/search/searchplugins/kaz-kk.xml
browser/components/search/searchplugins/klask.xml
browser/components/search/searchplugins/leit-is.xml
browser/components/search/searchplugins/leo_ende_de-rm.xml
browser/components/search/searchplugins/leo_ende_de.xml
browser/components/search/searchplugins/list-am.xml
browser/components/search/searchplugins/list.json
browser/components/search/searchplugins/longdo.xml
browser/components/search/searchplugins/mailru.xml
browser/components/search/searchplugins/mapy-cz.xml
browser/components/search/searchplugins/marktplaats-fy-NL.xml
browser/components/search/searchplugins/marktplaats-nl.xml
browser/components/search/searchplugins/mercadolibre-ar.xml
browser/components/search/searchplugins/mercadolibre-cl.xml
browser/components/search/searchplugins/mercadolibre-mx.xml
browser/components/search/searchplugins/mercadolivre.xml
browser/components/search/searchplugins/meta-ua.xml
browser/components/search/searchplugins/morfix-dic.xml
browser/components/search/searchplugins/najdi-si.xml
browser/components/search/searchplugins/naver-kr.xml
browser/components/search/searchplugins/neti-ee.xml
browser/components/search/searchplugins/odpiralni.xml
browser/components/search/searchplugins/olx.xml
browser/components/search/searchplugins/oshiete-goo.xml
browser/components/search/searchplugins/osta-ee.xml
browser/components/search/searchplugins/ozonru.xml
browser/components/search/searchplugins/palasprint.xml
browser/components/search/searchplugins/paroledigenova-lij.xml
browser/components/search/searchplugins/pazaruvaj.xml
browser/components/search/searchplugins/pledarigrond.xml
browser/components/search/searchplugins/pogodak.xml
browser/components/search/searchplugins/portalbgdict.xml
browser/components/search/searchplugins/priberam.xml
browser/components/search/searchplugins/priceru.xml
browser/components/search/searchplugins/prisjakt-sv-SE.xml
browser/components/search/searchplugins/pwn-pl.xml
browser/components/search/searchplugins/qwant.xml
browser/components/search/searchplugins/qxl-NO.xml
browser/components/search/searchplugins/rakuten.xml
browser/components/search/searchplugins/readmoo.xml
browser/components/search/searchplugins/rediff.xml
browser/components/search/searchplugins/reta-vortaro.xml
browser/components/search/searchplugins/salidzinilv.xml
browser/components/search/searchplugins/sapo.xml
browser/components/search/searchplugins/seznam-cz.xml
browser/components/search/searchplugins/slovnik-sk.xml
browser/components/search/searchplugins/sslv.xml
browser/components/search/searchplugins/sztaki-en-hu.xml
browser/components/search/searchplugins/tearma.xml
browser/components/search/searchplugins/termau.xml
browser/components/search/searchplugins/twitter-ja.xml
browser/components/search/searchplugins/twitter.xml
browser/components/search/searchplugins/tyda-sv-SE.xml
browser/components/search/searchplugins/vatera.xml
browser/components/search/searchplugins/webdunia.xml
browser/components/search/searchplugins/wikipedia-NN.xml
browser/components/search/searchplugins/wikipedia-NO.xml
browser/components/search/searchplugins/wikipedia-af.xml
browser/components/search/searchplugins/wikipedia-an.xml
browser/components/search/searchplugins/wikipedia-ar.xml
browser/components/search/searchplugins/wikipedia-as.xml
browser/components/search/searchplugins/wikipedia-ast.xml
browser/components/search/searchplugins/wikipedia-az.xml
browser/components/search/searchplugins/wikipedia-be-tarask.xml
browser/components/search/searchplugins/wikipedia-be.xml
browser/components/search/searchplugins/wikipedia-bg.xml
browser/components/search/searchplugins/wikipedia-bn.xml
browser/components/search/searchplugins/wikipedia-br.xml
browser/components/search/searchplugins/wikipedia-bs.xml
browser/components/search/searchplugins/wikipedia-ca.xml
browser/components/search/searchplugins/wikipedia-crh.xml
browser/components/search/searchplugins/wikipedia-cy.xml
browser/components/search/searchplugins/wikipedia-cz.xml
browser/components/search/searchplugins/wikipedia-da.xml
browser/components/search/searchplugins/wikipedia-de.xml
browser/components/search/searchplugins/wikipedia-dsb.xml
browser/components/search/searchplugins/wikipedia-el.xml
browser/components/search/searchplugins/wikipedia-eo.xml
browser/components/search/searchplugins/wikipedia-es.xml
browser/components/search/searchplugins/wikipedia-et.xml
browser/components/search/searchplugins/wikipedia-eu.xml
browser/components/search/searchplugins/wikipedia-fa.xml
browser/components/search/searchplugins/wikipedia-fi.xml
browser/components/search/searchplugins/wikipedia-fr.xml
browser/components/search/searchplugins/wikipedia-fy-NL.xml
browser/components/search/searchplugins/wikipedia-ga-IE.xml
browser/components/search/searchplugins/wikipedia-gd.xml
browser/components/search/searchplugins/wikipedia-gl.xml
browser/components/search/searchplugins/wikipedia-gn.xml
browser/components/search/searchplugins/wikipedia-gu.xml
browser/components/search/searchplugins/wikipedia-he.xml
browser/components/search/searchplugins/wikipedia-hi.xml
browser/components/search/searchplugins/wikipedia-hr.xml
browser/components/search/searchplugins/wikipedia-hsb.xml
browser/components/search/searchplugins/wikipedia-hu.xml
browser/components/search/searchplugins/wikipedia-hy.xml
browser/components/search/searchplugins/wikipedia-ia.xml
browser/components/search/searchplugins/wikipedia-id.xml
browser/components/search/searchplugins/wikipedia-is.xml
browser/components/search/searchplugins/wikipedia-it.xml
browser/components/search/searchplugins/wikipedia-ja.xml
browser/components/search/searchplugins/wikipedia-ka.xml
browser/components/search/searchplugins/wikipedia-kab.xml
browser/components/search/searchplugins/wikipedia-kk.xml
browser/components/search/searchplugins/wikipedia-km.xml
browser/components/search/searchplugins/wikipedia-kn.xml
browser/components/search/searchplugins/wikipedia-kr.xml
browser/components/search/searchplugins/wikipedia-lij.xml
browser/components/search/searchplugins/wikipedia-lo.xml
browser/components/search/searchplugins/wikipedia-lt.xml
browser/components/search/searchplugins/wikipedia-ltg.xml
browser/components/search/searchplugins/wikipedia-lv.xml
browser/components/search/searchplugins/wikipedia-mk.xml
browser/components/search/searchplugins/wikipedia-ml.xml
browser/components/search/searchplugins/wikipedia-mr.xml
browser/components/search/searchplugins/wikipedia-ms.xml
browser/components/search/searchplugins/wikipedia-my.xml
browser/components/search/searchplugins/wikipedia-ne.xml
browser/components/search/searchplugins/wikipedia-nl.xml
browser/components/search/searchplugins/wikipedia-oc.xml
browser/components/search/searchplugins/wikipedia-or.xml
browser/components/search/searchplugins/wikipedia-pa.xml
browser/components/search/searchplugins/wikipedia-pl.xml
browser/components/search/searchplugins/wikipedia-pt.xml
browser/components/search/searchplugins/wikipedia-rm.xml
browser/components/search/searchplugins/wikipedia-ro.xml
browser/components/search/searchplugins/wikipedia-ru.xml
browser/components/search/searchplugins/wikipedia-si.xml
browser/components/search/searchplugins/wikipedia-sk.xml
browser/components/search/searchplugins/wikipedia-sl.xml
browser/components/search/searchplugins/wikipedia-sq.xml
browser/components/search/searchplugins/wikipedia-sr.xml
browser/components/search/searchplugins/wikipedia-sv-SE.xml
browser/components/search/searchplugins/wikipedia-ta.xml
browser/components/search/searchplugins/wikipedia-te.xml
browser/components/search/searchplugins/wikipedia-th.xml
browser/components/search/searchplugins/wikipedia-tl.xml
browser/components/search/searchplugins/wikipedia-tr.xml
browser/components/search/searchplugins/wikipedia-uk.xml
browser/components/search/searchplugins/wikipedia-ur.xml
browser/components/search/searchplugins/wikipedia-uz.xml
browser/components/search/searchplugins/wikipedia-vi.xml
browser/components/search/searchplugins/wikipedia-wo.xml
browser/components/search/searchplugins/wikipedia-zh-CN.xml
browser/components/search/searchplugins/wikipedia-zh-TW.xml
browser/components/search/searchplugins/wikipedia.xml
browser/components/search/searchplugins/wiktionary-oc.xml
browser/components/search/searchplugins/wiktionary-te.xml
browser/components/search/searchplugins/wolnelektury-pl.xml
browser/components/search/searchplugins/yahoo-jp-auctions.xml
browser/components/search/searchplugins/yahoo-jp.xml
browser/components/search/searchplugins/yandex-az.xml
browser/components/search/searchplugins/yandex-by.xml
browser/components/search/searchplugins/yandex-en.xml
browser/components/search/searchplugins/yandex-kk.xml
browser/components/search/searchplugins/yandex-ru.xml
browser/components/search/searchplugins/yandex-tr.xml
browser/components/search/searchplugins/zoznam-sk.xml
browser/components/search/test/browser.ini
browser/locales/Makefile.in
browser/locales/jar.mn
browser/locales/moz.build
browser/locales/search/list.json
browser/locales/searchplugins/allaannonser-sv-SE.xml
browser/locales/searchplugins/allegro-pl.xml
browser/locales/searchplugins/amazon-au.xml
browser/locales/searchplugins/amazon-br.xml
browser/locales/searchplugins/amazon-ca.xml
browser/locales/searchplugins/amazon-en-GB.xml
browser/locales/searchplugins/amazon-france.xml
browser/locales/searchplugins/amazon-in.xml
browser/locales/searchplugins/amazon-it.xml
browser/locales/searchplugins/amazon-jp.xml
browser/locales/searchplugins/amazon-mx.xml
browser/locales/searchplugins/amazon-nl.xml
browser/locales/searchplugins/amazondotcn.xml
browser/locales/searchplugins/amazondotcom-de.xml
browser/locales/searchplugins/amazondotcom.xml
browser/locales/searchplugins/atlas-sk.xml
browser/locales/searchplugins/azerdict.xml
browser/locales/searchplugins/azet-sk.xml
browser/locales/searchplugins/baidu.xml
browser/locales/searchplugins/bbc-alba.xml
browser/locales/searchplugins/bing.xml
browser/locales/searchplugins/bok-NO.xml
browser/locales/searchplugins/bolcom-fy-NL.xml
browser/locales/searchplugins/bolcom-nl.xml
browser/locales/searchplugins/bookplus-fi.xml
browser/locales/searchplugins/buscape.xml
browser/locales/searchplugins/ceneji.xml
browser/locales/searchplugins/chambers-en-GB.xml
browser/locales/searchplugins/cnrtl-tlfi-fr.xml
browser/locales/searchplugins/coccoc.xml
browser/locales/searchplugins/danawa-kr.xml
browser/locales/searchplugins/daum-kr.xml
browser/locales/searchplugins/ddg.xml
browser/locales/searchplugins/diccionariu-alla.xml
browser/locales/searchplugins/dict-enlv.xml
browser/locales/searchplugins/diec2.xml
browser/locales/searchplugins/drae.xml
browser/locales/searchplugins/ebay-at.xml
browser/locales/searchplugins/ebay-au.xml
browser/locales/searchplugins/ebay-be.xml
browser/locales/searchplugins/ebay-ca.xml
browser/locales/searchplugins/ebay-ch.xml
browser/locales/searchplugins/ebay-de.xml
browser/locales/searchplugins/ebay-es.xml
browser/locales/searchplugins/ebay-fr.xml
browser/locales/searchplugins/ebay-ie.xml
browser/locales/searchplugins/ebay-it.xml
browser/locales/searchplugins/ebay-nl.xml
browser/locales/searchplugins/ebay-uk.xml
browser/locales/searchplugins/ebay.xml
browser/locales/searchplugins/ecosia.xml
browser/locales/searchplugins/eki-ee.xml
browser/locales/searchplugins/elebila.xml
browser/locales/searchplugins/eudict.xml
browser/locales/searchplugins/faclair-beag.xml
browser/locales/searchplugins/flip.xml
browser/locales/searchplugins/freelang.xml
browser/locales/searchplugins/google-2018.xml
browser/locales/searchplugins/google.xml
browser/locales/searchplugins/gujaratilexicon.xml
browser/locales/searchplugins/gulesider-NO.xml
browser/locales/searchplugins/heureka-cz.xml
browser/locales/searchplugins/hoepli.xml
browser/locales/searchplugins/hotline-ua.xml
browser/locales/searchplugins/images/amazon.ico
browser/locales/searchplugins/images/ebay.ico
browser/locales/searchplugins/images/wikipedia.ico
browser/locales/searchplugins/images/yandex-en.ico
browser/locales/searchplugins/images/yandex-ru.ico
browser/locales/searchplugins/kannadastore.xml
browser/locales/searchplugins/kaz-kk.xml
browser/locales/searchplugins/klask.xml
browser/locales/searchplugins/leit-is.xml
browser/locales/searchplugins/leo_ende_de-rm.xml
browser/locales/searchplugins/leo_ende_de.xml
browser/locales/searchplugins/list-am.xml
browser/locales/searchplugins/longdo.xml
browser/locales/searchplugins/mailru.xml
browser/locales/searchplugins/mapy-cz.xml
browser/locales/searchplugins/marktplaats-fy-NL.xml
browser/locales/searchplugins/marktplaats-nl.xml
browser/locales/searchplugins/mercadolibre-ar.xml
browser/locales/searchplugins/mercadolibre-cl.xml
browser/locales/searchplugins/mercadolibre-mx.xml
browser/locales/searchplugins/mercadolivre.xml
browser/locales/searchplugins/meta-ua.xml
browser/locales/searchplugins/morfix-dic.xml
browser/locales/searchplugins/najdi-si.xml
browser/locales/searchplugins/naver-kr.xml
browser/locales/searchplugins/neti-ee.xml
browser/locales/searchplugins/odpiralni.xml
browser/locales/searchplugins/olx.xml
browser/locales/searchplugins/oshiete-goo.xml
browser/locales/searchplugins/osta-ee.xml
browser/locales/searchplugins/ozonru.xml
browser/locales/searchplugins/palasprint.xml
browser/locales/searchplugins/paroledigenova-lij.xml
browser/locales/searchplugins/pazaruvaj.xml
browser/locales/searchplugins/pledarigrond.xml
browser/locales/searchplugins/pogodak.xml
browser/locales/searchplugins/portalbgdict.xml
browser/locales/searchplugins/priberam.xml
browser/locales/searchplugins/priceru.xml
browser/locales/searchplugins/prisjakt-sv-SE.xml
browser/locales/searchplugins/pwn-pl.xml
browser/locales/searchplugins/qwant.xml
browser/locales/searchplugins/qxl-NO.xml
browser/locales/searchplugins/rakuten.xml
browser/locales/searchplugins/readmoo.xml
browser/locales/searchplugins/rediff.xml
browser/locales/searchplugins/reta-vortaro.xml
browser/locales/searchplugins/salidzinilv.xml
browser/locales/searchplugins/sapo.xml
browser/locales/searchplugins/seznam-cz.xml
browser/locales/searchplugins/slovnik-sk.xml
browser/locales/searchplugins/sslv.xml
browser/locales/searchplugins/sztaki-en-hu.xml
browser/locales/searchplugins/tearma.xml
browser/locales/searchplugins/termau.xml
browser/locales/searchplugins/twitter-ja.xml
browser/locales/searchplugins/twitter.xml
browser/locales/searchplugins/tyda-sv-SE.xml
browser/locales/searchplugins/vatera.xml
browser/locales/searchplugins/webdunia.xml
browser/locales/searchplugins/wikipedia-NN.xml
browser/locales/searchplugins/wikipedia-NO.xml
browser/locales/searchplugins/wikipedia-af.xml
browser/locales/searchplugins/wikipedia-an.xml
browser/locales/searchplugins/wikipedia-ar.xml
browser/locales/searchplugins/wikipedia-as.xml
browser/locales/searchplugins/wikipedia-ast.xml
browser/locales/searchplugins/wikipedia-az.xml
browser/locales/searchplugins/wikipedia-be-tarask.xml
browser/locales/searchplugins/wikipedia-be.xml
browser/locales/searchplugins/wikipedia-bg.xml
browser/locales/searchplugins/wikipedia-bn.xml
browser/locales/searchplugins/wikipedia-br.xml
browser/locales/searchplugins/wikipedia-bs.xml
browser/locales/searchplugins/wikipedia-ca.xml
browser/locales/searchplugins/wikipedia-crh.xml
browser/locales/searchplugins/wikipedia-cy.xml
browser/locales/searchplugins/wikipedia-cz.xml
browser/locales/searchplugins/wikipedia-da.xml
browser/locales/searchplugins/wikipedia-de.xml
browser/locales/searchplugins/wikipedia-dsb.xml
browser/locales/searchplugins/wikipedia-el.xml
browser/locales/searchplugins/wikipedia-eo.xml
browser/locales/searchplugins/wikipedia-es.xml
browser/locales/searchplugins/wikipedia-et.xml
browser/locales/searchplugins/wikipedia-eu.xml
browser/locales/searchplugins/wikipedia-fa.xml
browser/locales/searchplugins/wikipedia-fi.xml
browser/locales/searchplugins/wikipedia-fr.xml
browser/locales/searchplugins/wikipedia-fy-NL.xml
browser/locales/searchplugins/wikipedia-ga-IE.xml
browser/locales/searchplugins/wikipedia-gd.xml
browser/locales/searchplugins/wikipedia-gl.xml
browser/locales/searchplugins/wikipedia-gn.xml
browser/locales/searchplugins/wikipedia-gu.xml
browser/locales/searchplugins/wikipedia-he.xml
browser/locales/searchplugins/wikipedia-hi.xml
browser/locales/searchplugins/wikipedia-hr.xml
browser/locales/searchplugins/wikipedia-hsb.xml
browser/locales/searchplugins/wikipedia-hu.xml
browser/locales/searchplugins/wikipedia-hy.xml
browser/locales/searchplugins/wikipedia-ia.xml
browser/locales/searchplugins/wikipedia-id.xml
browser/locales/searchplugins/wikipedia-is.xml
browser/locales/searchplugins/wikipedia-it.xml
browser/locales/searchplugins/wikipedia-ja.xml
browser/locales/searchplugins/wikipedia-ka.xml
browser/locales/searchplugins/wikipedia-kab.xml
browser/locales/searchplugins/wikipedia-kk.xml
browser/locales/searchplugins/wikipedia-km.xml
browser/locales/searchplugins/wikipedia-kn.xml
browser/locales/searchplugins/wikipedia-kr.xml
browser/locales/searchplugins/wikipedia-lij.xml
browser/locales/searchplugins/wikipedia-lo.xml
browser/locales/searchplugins/wikipedia-lt.xml
browser/locales/searchplugins/wikipedia-ltg.xml
browser/locales/searchplugins/wikipedia-lv.xml
browser/locales/searchplugins/wikipedia-mk.xml
browser/locales/searchplugins/wikipedia-ml.xml
browser/locales/searchplugins/wikipedia-mr.xml
browser/locales/searchplugins/wikipedia-ms.xml
browser/locales/searchplugins/wikipedia-my.xml
browser/locales/searchplugins/wikipedia-ne.xml
browser/locales/searchplugins/wikipedia-nl.xml
browser/locales/searchplugins/wikipedia-oc.xml
browser/locales/searchplugins/wikipedia-or.xml
browser/locales/searchplugins/wikipedia-pa.xml
browser/locales/searchplugins/wikipedia-pl.xml
browser/locales/searchplugins/wikipedia-pt.xml
browser/locales/searchplugins/wikipedia-rm.xml
browser/locales/searchplugins/wikipedia-ro.xml
browser/locales/searchplugins/wikipedia-ru.xml
browser/locales/searchplugins/wikipedia-si.xml
browser/locales/searchplugins/wikipedia-sk.xml
browser/locales/searchplugins/wikipedia-sl.xml
browser/locales/searchplugins/wikipedia-sq.xml
browser/locales/searchplugins/wikipedia-sr.xml
browser/locales/searchplugins/wikipedia-sv-SE.xml
browser/locales/searchplugins/wikipedia-ta.xml
browser/locales/searchplugins/wikipedia-te.xml
browser/locales/searchplugins/wikipedia-th.xml
browser/locales/searchplugins/wikipedia-tl.xml
browser/locales/searchplugins/wikipedia-tr.xml
browser/locales/searchplugins/wikipedia-uk.xml
browser/locales/searchplugins/wikipedia-ur.xml
browser/locales/searchplugins/wikipedia-uz.xml
browser/locales/searchplugins/wikipedia-vi.xml
browser/locales/searchplugins/wikipedia-wo.xml
browser/locales/searchplugins/wikipedia-zh-CN.xml
browser/locales/searchplugins/wikipedia-zh-TW.xml
browser/locales/searchplugins/wikipedia.xml
browser/locales/searchplugins/wiktionary-oc.xml
browser/locales/searchplugins/wiktionary-te.xml
browser/locales/searchplugins/wolnelektury-pl.xml
browser/locales/searchplugins/yahoo-jp-auctions.xml
browser/locales/searchplugins/yahoo-jp.xml
browser/locales/searchplugins/yandex-az.xml
browser/locales/searchplugins/yandex-by.xml
browser/locales/searchplugins/yandex-en.xml
browser/locales/searchplugins/yandex-kk.xml
browser/locales/searchplugins/yandex-ru.xml
browser/locales/searchplugins/yandex-tr.xml
browser/locales/searchplugins/zoznam-sk.xml
browser/modules/ContentSearch.jsm
mobile/android/chrome/jar.mn
mobile/android/components/moz.build
mobile/android/components/search/jar.mn
mobile/android/components/search/moz.build
mobile/android/components/search/searchplugins/amazon-au.xml
mobile/android/components/search/searchplugins/amazon-br.xml
mobile/android/components/search/searchplugins/amazon-ca.xml
mobile/android/components/search/searchplugins/amazon-co-uk.xml
mobile/android/components/search/searchplugins/amazon-de.xml
mobile/android/components/search/searchplugins/amazon-fr.xml
mobile/android/components/search/searchplugins/amazon-in.xml
mobile/android/components/search/searchplugins/amazon-it.xml
mobile/android/components/search/searchplugins/amazon-jp.xml
mobile/android/components/search/searchplugins/amazon-mx.xml
mobile/android/components/search/searchplugins/amazon-nl.xml
mobile/android/components/search/searchplugins/amazondotcom.xml
mobile/android/components/search/searchplugins/azerdict.xml
mobile/android/components/search/searchplugins/azet-sk.xml
mobile/android/components/search/searchplugins/baidu.xml
mobile/android/components/search/searchplugins/bing.xml
mobile/android/components/search/searchplugins/bolcom-fy-NL.xml
mobile/android/components/search/searchplugins/bolcom-nl.xml
mobile/android/components/search/searchplugins/ceneje.xml
mobile/android/components/search/searchplugins/coccoc.xml
mobile/android/components/search/searchplugins/danawa-kr.xml
mobile/android/components/search/searchplugins/daum-kr.xml
mobile/android/components/search/searchplugins/ddg.xml
mobile/android/components/search/searchplugins/diec2.xml
mobile/android/components/search/searchplugins/drae.xml
mobile/android/components/search/searchplugins/duckduckgo.xml
mobile/android/components/search/searchplugins/elebila.xml
mobile/android/components/search/searchplugins/faclair-beag.xml
mobile/android/components/search/searchplugins/google-2018.xml
mobile/android/components/search/searchplugins/google.xml
mobile/android/components/search/searchplugins/gulesider-mobile-NO.xml
mobile/android/components/search/searchplugins/heureka-cz.xml
mobile/android/components/search/searchplugins/hotline-ua.xml
mobile/android/components/search/searchplugins/leit-is.xml
mobile/android/components/search/searchplugins/leo_ende_de.xml
mobile/android/components/search/searchplugins/list-am.xml
mobile/android/components/search/searchplugins/list.json
mobile/android/components/search/searchplugins/mapy-cz.xml
mobile/android/components/search/searchplugins/mercadolibre-ar.xml
mobile/android/components/search/searchplugins/mercadolibre-cl.xml
mobile/android/components/search/searchplugins/mercadolibre-mx.xml
mobile/android/components/search/searchplugins/naver-kr.xml
mobile/android/components/search/searchplugins/odpiralni.xml
mobile/android/components/search/searchplugins/pazaruvaj.xml
mobile/android/components/search/searchplugins/pledarigrond.xml
mobile/android/components/search/searchplugins/prisjakt-sv-SE.xml
mobile/android/components/search/searchplugins/qwant.xml
mobile/android/components/search/searchplugins/rediff.xml
mobile/android/components/search/searchplugins/reta-vortaro.xml
mobile/android/components/search/searchplugins/salidzinilv.xml
mobile/android/components/search/searchplugins/seznam-cz.xml
mobile/android/components/search/searchplugins/skroutz.xml
mobile/android/components/search/searchplugins/slovnik-sk.xml
mobile/android/components/search/searchplugins/sslv.xml
mobile/android/components/search/searchplugins/sztaki-en-hu.xml
mobile/android/components/search/searchplugins/taobao.xml
mobile/android/components/search/searchplugins/tearma.xml
mobile/android/components/search/searchplugins/twitter-ja.xml
mobile/android/components/search/searchplugins/twitter.xml
mobile/android/components/search/searchplugins/vatera.xml
mobile/android/components/search/searchplugins/wikipedia-NN.xml
mobile/android/components/search/searchplugins/wikipedia-NO.xml
mobile/android/components/search/searchplugins/wikipedia-an.xml
mobile/android/components/search/searchplugins/wikipedia-ar.xml
mobile/android/components/search/searchplugins/wikipedia-as.xml
mobile/android/components/search/searchplugins/wikipedia-ast.xml
mobile/android/components/search/searchplugins/wikipedia-az.xml
mobile/android/components/search/searchplugins/wikipedia-be.xml
mobile/android/components/search/searchplugins/wikipedia-bg.xml
mobile/android/components/search/searchplugins/wikipedia-bn.xml
mobile/android/components/search/searchplugins/wikipedia-br.xml
mobile/android/components/search/searchplugins/wikipedia-bs.xml
mobile/android/components/search/searchplugins/wikipedia-ca.xml
mobile/android/components/search/searchplugins/wikipedia-cy.xml
mobile/android/components/search/searchplugins/wikipedia-cz.xml
mobile/android/components/search/searchplugins/wikipedia-da.xml
mobile/android/components/search/searchplugins/wikipedia-de.xml
mobile/android/components/search/searchplugins/wikipedia-dsb.xml
mobile/android/components/search/searchplugins/wikipedia-el.xml
mobile/android/components/search/searchplugins/wikipedia-eo.xml
mobile/android/components/search/searchplugins/wikipedia-es.xml
mobile/android/components/search/searchplugins/wikipedia-et.xml
mobile/android/components/search/searchplugins/wikipedia-eu.xml
mobile/android/components/search/searchplugins/wikipedia-fa.xml
mobile/android/components/search/searchplugins/wikipedia-fi.xml
mobile/android/components/search/searchplugins/wikipedia-fr.xml
mobile/android/components/search/searchplugins/wikipedia-fy-NL.xml
mobile/android/components/search/searchplugins/wikipedia-ga-IE.xml
mobile/android/components/search/searchplugins/wikipedia-gd.xml
mobile/android/components/search/searchplugins/wikipedia-gl.xml
mobile/android/components/search/searchplugins/wikipedia-gn.xml
mobile/android/components/search/searchplugins/wikipedia-gu.xml
mobile/android/components/search/searchplugins/wikipedia-he.xml
mobile/android/components/search/searchplugins/wikipedia-hi.xml
mobile/android/components/search/searchplugins/wikipedia-hr.xml
mobile/android/components/search/searchplugins/wikipedia-hsb.xml
mobile/android/components/search/searchplugins/wikipedia-hu.xml
mobile/android/components/search/searchplugins/wikipedia-hy-AM.xml
mobile/android/components/search/searchplugins/wikipedia-ia.xml
mobile/android/components/search/searchplugins/wikipedia-id.xml
mobile/android/components/search/searchplugins/wikipedia-is.xml
mobile/android/components/search/searchplugins/wikipedia-it.xml
mobile/android/components/search/searchplugins/wikipedia-ja.xml
mobile/android/components/search/searchplugins/wikipedia-ka.xml
mobile/android/components/search/searchplugins/wikipedia-kab.xml
mobile/android/components/search/searchplugins/wikipedia-kk.xml
mobile/android/components/search/searchplugins/wikipedia-km.xml
mobile/android/components/search/searchplugins/wikipedia-kn.xml
mobile/android/components/search/searchplugins/wikipedia-lij.xml
mobile/android/components/search/searchplugins/wikipedia-lo.xml
mobile/android/components/search/searchplugins/wikipedia-lt.xml
mobile/android/components/search/searchplugins/wikipedia-ltg.xml
mobile/android/components/search/searchplugins/wikipedia-lv.xml
mobile/android/components/search/searchplugins/wikipedia-ml.xml
mobile/android/components/search/searchplugins/wikipedia-mr.xml
mobile/android/components/search/searchplugins/wikipedia-ms.xml
mobile/android/components/search/searchplugins/wikipedia-my.xml
mobile/android/components/search/searchplugins/wikipedia-ne.xml
mobile/android/components/search/searchplugins/wikipedia-nl.xml
mobile/android/components/search/searchplugins/wikipedia-oc.xml
mobile/android/components/search/searchplugins/wikipedia-or.xml
mobile/android/components/search/searchplugins/wikipedia-pa.xml
mobile/android/components/search/searchplugins/wikipedia-pl.xml
mobile/android/components/search/searchplugins/wikipedia-pt.xml
mobile/android/components/search/searchplugins/wikipedia-rm.xml
mobile/android/components/search/searchplugins/wikipedia-ro.xml
mobile/android/components/search/searchplugins/wikipedia-ru.xml
mobile/android/components/search/searchplugins/wikipedia-sk.xml
mobile/android/components/search/searchplugins/wikipedia-sl.xml
mobile/android/components/search/searchplugins/wikipedia-sq.xml
mobile/android/components/search/searchplugins/wikipedia-sr.xml
mobile/android/components/search/searchplugins/wikipedia-sv-SE.xml
mobile/android/components/search/searchplugins/wikipedia-ta.xml
mobile/android/components/search/searchplugins/wikipedia-te.xml
mobile/android/components/search/searchplugins/wikipedia-th.xml
mobile/android/components/search/searchplugins/wikipedia-tr.xml
mobile/android/components/search/searchplugins/wikipedia-uk.xml
mobile/android/components/search/searchplugins/wikipedia-ur.xml
mobile/android/components/search/searchplugins/wikipedia-uz.xml
mobile/android/components/search/searchplugins/wikipedia-vi.xml
mobile/android/components/search/searchplugins/wikipedia-wo.xml
mobile/android/components/search/searchplugins/wikipedia-zh-CN.xml
mobile/android/components/search/searchplugins/wikipedia-zh-TW.xml
mobile/android/components/search/searchplugins/wikipedia.xml
mobile/android/components/search/searchplugins/wiktionary-kn.xml
mobile/android/components/search/searchplugins/wiktionary-oc.xml
mobile/android/components/search/searchplugins/wiktionary-or.xml
mobile/android/components/search/searchplugins/wiktionary-ta.xml
mobile/android/components/search/searchplugins/wiktionary-te.xml
mobile/android/components/search/searchplugins/yahoo-jp.xml
mobile/android/components/search/searchplugins/yandex-en.xml
mobile/android/components/search/searchplugins/yandex-ru.xml
mobile/android/components/search/searchplugins/yandex-tr.xml
mobile/android/components/search/searchplugins/yandex.by.xml
mobile/android/components/search/searchplugins/yandex.xml
mobile/android/installer/allowed-dupes.mn
mobile/locales/Makefile.in
mobile/locales/search/list.json
mobile/locales/searchplugins/amazon-au.xml
mobile/locales/searchplugins/amazon-br.xml
mobile/locales/searchplugins/amazon-ca.xml
mobile/locales/searchplugins/amazon-co-uk.xml
mobile/locales/searchplugins/amazon-de.xml
mobile/locales/searchplugins/amazon-fr.xml
mobile/locales/searchplugins/amazon-in.xml
mobile/locales/searchplugins/amazon-it.xml
mobile/locales/searchplugins/amazon-jp.xml
mobile/locales/searchplugins/amazon-mx.xml
mobile/locales/searchplugins/amazon-nl.xml
mobile/locales/searchplugins/amazondotcom.xml
mobile/locales/searchplugins/azerdict.xml
mobile/locales/searchplugins/azet-sk.xml
mobile/locales/searchplugins/baidu.xml
mobile/locales/searchplugins/bing.xml
mobile/locales/searchplugins/bolcom-fy-NL.xml
mobile/locales/searchplugins/bolcom-nl.xml
mobile/locales/searchplugins/ceneje.xml
mobile/locales/searchplugins/coccoc.xml
mobile/locales/searchplugins/danawa-kr.xml
mobile/locales/searchplugins/daum-kr.xml
mobile/locales/searchplugins/ddg.xml
mobile/locales/searchplugins/diec2.xml
mobile/locales/searchplugins/drae.xml
mobile/locales/searchplugins/duckduckgo.xml
mobile/locales/searchplugins/elebila.xml
mobile/locales/searchplugins/faclair-beag.xml
mobile/locales/searchplugins/google-2018.xml
mobile/locales/searchplugins/google.xml
mobile/locales/searchplugins/gulesider-mobile-NO.xml
mobile/locales/searchplugins/heureka-cz.xml
mobile/locales/searchplugins/hotline-ua.xml
mobile/locales/searchplugins/leit-is.xml
mobile/locales/searchplugins/leo_ende_de.xml
mobile/locales/searchplugins/list-am.xml
mobile/locales/searchplugins/mapy-cz.xml
mobile/locales/searchplugins/mercadolibre-ar.xml
mobile/locales/searchplugins/mercadolibre-cl.xml
mobile/locales/searchplugins/mercadolibre-mx.xml
mobile/locales/searchplugins/naver-kr.xml
mobile/locales/searchplugins/odpiralni.xml
mobile/locales/searchplugins/pazaruvaj.xml
mobile/locales/searchplugins/pledarigrond.xml
mobile/locales/searchplugins/prisjakt-sv-SE.xml
mobile/locales/searchplugins/qwant.xml
mobile/locales/searchplugins/rediff.xml
mobile/locales/searchplugins/reta-vortaro.xml
mobile/locales/searchplugins/salidzinilv.xml
mobile/locales/searchplugins/seznam-cz.xml
mobile/locales/searchplugins/skroutz.xml
mobile/locales/searchplugins/slovnik-sk.xml
mobile/locales/searchplugins/sslv.xml
mobile/locales/searchplugins/sztaki-en-hu.xml
mobile/locales/searchplugins/taobao.xml
mobile/locales/searchplugins/tearma.xml
mobile/locales/searchplugins/twitter-ja.xml
mobile/locales/searchplugins/twitter.xml
mobile/locales/searchplugins/vatera.xml
mobile/locales/searchplugins/wikipedia-NN.xml
mobile/locales/searchplugins/wikipedia-NO.xml
mobile/locales/searchplugins/wikipedia-an.xml
mobile/locales/searchplugins/wikipedia-ar.xml
mobile/locales/searchplugins/wikipedia-as.xml
mobile/locales/searchplugins/wikipedia-ast.xml
mobile/locales/searchplugins/wikipedia-az.xml
mobile/locales/searchplugins/wikipedia-be.xml
mobile/locales/searchplugins/wikipedia-bg.xml
mobile/locales/searchplugins/wikipedia-bn.xml
mobile/locales/searchplugins/wikipedia-br.xml
mobile/locales/searchplugins/wikipedia-bs.xml
mobile/locales/searchplugins/wikipedia-ca.xml
mobile/locales/searchplugins/wikipedia-cy.xml
mobile/locales/searchplugins/wikipedia-cz.xml
mobile/locales/searchplugins/wikipedia-da.xml
mobile/locales/searchplugins/wikipedia-de.xml
mobile/locales/searchplugins/wikipedia-dsb.xml
mobile/locales/searchplugins/wikipedia-el.xml
mobile/locales/searchplugins/wikipedia-eo.xml
mobile/locales/searchplugins/wikipedia-es.xml
mobile/locales/searchplugins/wikipedia-et.xml
mobile/locales/searchplugins/wikipedia-eu.xml
mobile/locales/searchplugins/wikipedia-fa.xml
mobile/locales/searchplugins/wikipedia-fi.xml
mobile/locales/searchplugins/wikipedia-fr.xml
mobile/locales/searchplugins/wikipedia-fy-NL.xml
mobile/locales/searchplugins/wikipedia-ga-IE.xml
mobile/locales/searchplugins/wikipedia-gd.xml
mobile/locales/searchplugins/wikipedia-gl.xml
mobile/locales/searchplugins/wikipedia-gn.xml
mobile/locales/searchplugins/wikipedia-gu.xml
mobile/locales/searchplugins/wikipedia-he.xml
mobile/locales/searchplugins/wikipedia-hi.xml
mobile/locales/searchplugins/wikipedia-hr.xml
mobile/locales/searchplugins/wikipedia-hsb.xml
mobile/locales/searchplugins/wikipedia-hu.xml
mobile/locales/searchplugins/wikipedia-hy-AM.xml
mobile/locales/searchplugins/wikipedia-ia.xml
mobile/locales/searchplugins/wikipedia-id.xml
mobile/locales/searchplugins/wikipedia-is.xml
mobile/locales/searchplugins/wikipedia-it.xml
mobile/locales/searchplugins/wikipedia-ja.xml
mobile/locales/searchplugins/wikipedia-ka.xml
mobile/locales/searchplugins/wikipedia-kab.xml
mobile/locales/searchplugins/wikipedia-kk.xml
mobile/locales/searchplugins/wikipedia-km.xml
mobile/locales/searchplugins/wikipedia-kn.xml
mobile/locales/searchplugins/wikipedia-lij.xml
mobile/locales/searchplugins/wikipedia-lo.xml
mobile/locales/searchplugins/wikipedia-lt.xml
mobile/locales/searchplugins/wikipedia-ltg.xml
mobile/locales/searchplugins/wikipedia-lv.xml
mobile/locales/searchplugins/wikipedia-ml.xml
mobile/locales/searchplugins/wikipedia-mr.xml
mobile/locales/searchplugins/wikipedia-ms.xml
mobile/locales/searchplugins/wikipedia-my.xml
mobile/locales/searchplugins/wikipedia-ne.xml
mobile/locales/searchplugins/wikipedia-nl.xml
mobile/locales/searchplugins/wikipedia-oc.xml
mobile/locales/searchplugins/wikipedia-or.xml
mobile/locales/searchplugins/wikipedia-pa.xml
mobile/locales/searchplugins/wikipedia-pl.xml
mobile/locales/searchplugins/wikipedia-pt.xml
mobile/locales/searchplugins/wikipedia-rm.xml
mobile/locales/searchplugins/wikipedia-ro.xml
mobile/locales/searchplugins/wikipedia-ru.xml
mobile/locales/searchplugins/wikipedia-sk.xml
mobile/locales/searchplugins/wikipedia-sl.xml
mobile/locales/searchplugins/wikipedia-sq.xml
mobile/locales/searchplugins/wikipedia-sr.xml
mobile/locales/searchplugins/wikipedia-sv-SE.xml
mobile/locales/searchplugins/wikipedia-ta.xml
mobile/locales/searchplugins/wikipedia-te.xml
mobile/locales/searchplugins/wikipedia-th.xml
mobile/locales/searchplugins/wikipedia-tr.xml
mobile/locales/searchplugins/wikipedia-uk.xml
mobile/locales/searchplugins/wikipedia-ur.xml
mobile/locales/searchplugins/wikipedia-uz.xml
mobile/locales/searchplugins/wikipedia-vi.xml
mobile/locales/searchplugins/wikipedia-wo.xml
mobile/locales/searchplugins/wikipedia-zh-CN.xml
mobile/locales/searchplugins/wikipedia-zh-TW.xml
mobile/locales/searchplugins/wikipedia.xml
mobile/locales/searchplugins/wiktionary-kn.xml
mobile/locales/searchplugins/wiktionary-oc.xml
mobile/locales/searchplugins/wiktionary-or.xml
mobile/locales/searchplugins/wiktionary-ta.xml
mobile/locales/searchplugins/wiktionary-te.xml
mobile/locales/searchplugins/yahoo-jp.xml
mobile/locales/searchplugins/yandex-en.xml
mobile/locales/searchplugins/yandex-ru.xml
mobile/locales/searchplugins/yandex-tr.xml
mobile/locales/searchplugins/yandex.by.xml
mobile/locales/searchplugins/yandex.xml
toolkit/components/search/nsSearchService.js
toolkit/components/search/tests/xpcshell/data/list.json
toolkit/components/search/tests/xpcshell/head_search.js
toolkit/components/search/tests/xpcshell/test_list_json_locale.js
toolkit/components/search/tests/xpcshell/xpcshell.ini
--- a/browser/base/content/test/static/browser_all_files_referenced.js
+++ b/browser/base/content/test/static/browser_all_files_referenced.js
@@ -7,16 +7,17 @@
 
 // Slow on asan builds.
 requestLongerTimeout(5);
 
 var isDevtools = SimpleTest.harnessParameters.subsuite == "devtools";
 
 var gExceptionPaths = [
   "chrome://browser/content/defaultthemes/",
+  "chrome://browser/locale/searchplugins/",
   "resource://app/defaults/settings/blocklists/",
   "resource://app/defaults/settings/main/",
   "resource://app/defaults/settings/pinning/",
   "resource://app/defaults/preferences/",
   "resource://gre/modules/commonjs/",
   "resource://gre/defaults/pref/",
 
   // These resources are referenced using relative paths from html files.
@@ -30,19 +31,16 @@ var gExceptionPaths = [
   "resource://activity-stream/prerendered/",
 
   // browser/extensions/pdfjs/content/build/pdf.js#1999
   "resource://pdf.js/web/images/",
 
   // Exclude all the metadata paths under the country metadata folder because these
   // paths will be concatenated in FormAutofillUtils.jsm based on different country/region.
   "resource://formautofill/addressmetadata/",
-
-  // Exclude all search-plugins because they aren't referenced by filename
-  "resource://search-plugins/",
 ];
 
 // These are not part of the omni.ja file, so we find them only when running
 // the test on a non-packaged build.
 if (AppConstants.platform == "macosx")
   gExceptionPaths.push("resource://gre/res/cursors/");
 
 var whitelist = [
--- a/browser/base/jar.mn
+++ b/browser/base/jar.mn
@@ -112,8 +112,9 @@ browser.jar:
         content/browser/blockedSite.xhtml               (content/blockedSite.xhtml)
 
 % override chrome://global/content/netError.xhtml chrome://browser/content/aboutNetError.xhtml
 
 # L10n resources and overrides.
 % override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties
 % override chrome://global/locale/netError.dtd chrome://browser/locale/netError.dtd
 % override chrome://mozapps/locale/downloads/settingsChange.dtd chrome://browser/locale/downloads/settingsChange.dtd
+% resource search-plugins chrome://browser/locale/searchplugins/
--- a/browser/components/search/content/search.xml
+++ b/browser/components/search/content/search.xml
@@ -62,17 +62,16 @@
     </content>
 
     <implementation implements="nsIObserver">
       <constructor><![CDATA[
         if (this.parentNode.parentNode.localName == "toolbarpaletteitem")
           return;
 
         Services.obs.addObserver(this, "browser-search-engine-modified");
-        Services.obs.addObserver(this, "browser-search-service");
 
         this._initialized = true;
 
         (window.delayedStartupPromise || Promise.resolve()).then(() => {
           window.requestIdleCallback(() => {
             Services.search.init(aStatus => {
               // Bail out if the binding's been destroyed
               if (!this._initialized)
@@ -110,17 +109,16 @@
       ]]></destructor>
 
       <method name="destroy">
         <body><![CDATA[
         if (this._initialized) {
           this._initialized = false;
 
           Services.obs.removeObserver(this, "browser-search-engine-modified");
-          Services.obs.removeObserver(this, "browser-search-service");
         }
 
         // Make sure to break the cycle from _textbox to us. Otherwise we leak
         // the world. But make sure it's actually pointing to us.
         // Also make sure the textbox has ever been constructed, otherwise the
         // _textbox getter will cause the textbox constructor to run, add an
         // observer, and leak the world too.
         if (this._textboxInitialized && this._textbox.mController.input == this)
@@ -180,18 +178,17 @@
         ]]></body>
       </method>
 
       <method name="observe">
         <parameter name="aEngine"/>
         <parameter name="aTopic"/>
         <parameter name="aVerb"/>
         <body><![CDATA[
-          if (aTopic == "browser-search-engine-modified" ||
-              (aTopic == "browser-search-service" && aVerb == "init-complete")) {
+          if (aTopic == "browser-search-engine-modified") {
             // Make sure the engine list is refetched next time it's needed
             this._engines = null;
 
             // Update the popup header and update the display after any modification.
             this._textbox.popup.updateHeader();
             this.updateDisplay();
           }
         ]]></body>
@@ -1304,17 +1301,16 @@
         menu.addEventListener("popuphidden", aEvent => {
           this._ignoreMouseEvents = false;
           aEvent.stopPropagation();
         });
 
         // Add weak referenced observers to invalidate our cached list of engines.
         Services.prefs.addObserver("browser.search.hiddenOneOffs", this, true);
         Services.obs.addObserver(this, "browser-search-engine-modified", true);
-        Services.obs.addObserver(this, "browser-search-service", true);
 
         // Rebuild the buttons when the theme changes.  See bug 1357800 for
         // details.  Summary: On Linux, switching between themes can cause a row
         // of buttons to disappear.
         Services.obs.addObserver(this, "lightweight-theme-changed", true);
       ]]></constructor>
 
       <!-- This handles events outside the one-off buttons, like on the popup
--- a/browser/components/search/jar.mn
+++ b/browser/components/search/jar.mn
@@ -1,12 +1,8 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 browser.jar:
         content/browser/search/search.xml                           (content/search.xml)
         content/browser/search/searchReset.xhtml                    (content/searchReset.xhtml)
         content/browser/search/searchReset.js                       (content/searchReset.js)
-
-        searchplugins/                                              (searchplugins/**)
-
-% resource search-plugins %searchplugins/
--- a/browser/components/search/test/browser.ini
+++ b/browser/components/search/test/browser.ini
@@ -19,18 +19,21 @@ support-files =
 [browser_addEngine.js]
 [browser_amazon.js]
 [browser_bing.js]
 [browser_contextmenu.js]
 [browser_contextSearchTabPosition.js]
 skip-if = os == "mac" # bug 967013
 [browser_ddg.js]
 [browser_eBay.js]
+skip-if = artifact # bug 1315953
 [browser_google.js]
+skip-if = artifact # bug 1315953
 [browser_google_behavior.js]
+skip-if = artifact # bug 1315953
 [browser_healthreport.js]
 [browser_hiddenOneOffs_cleanup.js]
 [browser_hiddenOneOffs_diacritics.js]
 [browser_oneOffContextMenu.js]
 [browser_oneOffContextMenu_setDefault.js]
 [browser_oneOffHeader.js]
 skip-if = os == "mac" #1421238
 [browser_private_search_perwindowpb.js]
--- a/browser/locales/Makefile.in
+++ b/browser/locales/Makefile.in
@@ -34,39 +34,58 @@ ifneq (,$(filter cocoa,$(MOZ_WIDGET_TOOL
 MOZ_PKG_MAC_DSSTORE=$(ABS_DIST)/branding/dsstore
 MOZ_PKG_MAC_BACKGROUND=$(ABS_DIST)/branding/background.png
 MOZ_PKG_MAC_ICON=$(ABS_DIST)/branding/disk.icns
 MOZ_PKG_MAC_EXTRA=--symlink '/Applications:/ '
 endif
 
 MOZ_SFX_PACKAGE=$(topsrcdir)/other-licenses/7zstub/firefox/7zSD.sfx
 
+SEARCHPLUGINS_FILENAMES := $(or $(shell $(call py_action,output_searchplugins_list,$(srcdir)/search/list.json $(AB_CD))), $(error Missing search plugins))
+SEARCHPLUGINS_PATH := .deps/generated_$(AB_CD)
+SEARCHPLUGINS_TARGET := libs searchplugins
+SEARCHPLUGINS := $(foreach plugin,$(addsuffix .xml,$(SEARCHPLUGINS_FILENAMES)),$(or $(wildcard $(srcdir)/searchplugins/$(plugin)),$(error Missing searchplugin: $(plugin))))
+# Some locale-specific search plugins may have preprocessor directives, but the
+# default en-US ones do not.
+SEARCHPLUGINS_FLAGS := --silence-missing-directive-warnings
+PP_TARGETS += SEARCHPLUGINS
+
+list-json = $(SEARCHPLUGINS_PATH)/list.json
+GARBAGE += $(list-json)
+
+libs:: searchplugins
+
 # Required for l10n.mk - defines a list of app sub dirs that should
 # be included in langpack xpis.
 DIST_SUBDIRS = $(DIST_SUBDIR)
 
 include $(topsrcdir)/config/rules.mk
 
 include $(topsrcdir)/toolkit/locales/l10n.mk
 
+$(list-json): $(call mkdir_deps,$(SEARCHPLUGINS_PATH)) $(if $(IS_LANGUAGE_REPACK),FORCE)
+	$(call py_action,generate_searchjson,$(srcdir)/search/list.json $(AB_CD) $(list-json))
+searchplugins:: $(list-json)
+
 libs-%: AB_CD=$*
 libs-%:
 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
 	$(NSINSTALL) -D $(DIST)/install
 	@$(MAKE) -C ../../toolkit/locales libs-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
 	@$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
 ifneq (,$(wildcard ../extensions/formautofill/locales))
 	@$(MAKE) -C ../extensions/formautofill/locales AB_CD=$* XPI_NAME=locale-$*
 endif
 	@$(MAKE) -C ../extensions/onboarding/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../extensions/pocket/locale AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../extensions/webcompat-reporter/locales AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C ../../devtools/client/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
 	@$(MAKE) -C ../../devtools/startup/locales AB_CD=$* XPI_NAME=locale-$* XPI_ROOT_APPID='$(XPI_ROOT_APPID)'
+	@$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=$(PREF_DIR)
 	@$(MAKE) multilocale.txt-$* AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
 
 chrome-%: AB_CD=$*
 chrome-%: IS_LANGUAGE_REPACK=1
 chrome-%:
 	$(if $(filter en-US,$(AB_CD)),, @$(MAKE) merge-$*)
--- a/browser/locales/jar.mn
+++ b/browser/locales/jar.mn
@@ -55,16 +55,28 @@
     locale/browser/feeds/subscribe.dtd              (%chrome/browser/feeds/subscribe.dtd)
     locale/browser/feeds/subscribe.properties       (%chrome/browser/feeds/subscribe.properties)
     locale/browser/migration/migration.dtd         (%chrome/browser/migration/migration.dtd)
     locale/browser/migration/migration.properties  (%chrome/browser/migration/migration.properties)
     locale/browser/preferences/preferences.properties     (%chrome/browser/preferences/preferences.properties)
     locale/browser/preferences/security.dtd           (%chrome/browser/preferences/security.dtd)
     locale/browser/syncBrand.dtd                (%chrome/browser/syncBrand.dtd)
     locale/browser/syncSetup.properties         (%chrome/browser/syncSetup.properties)
+#if BUILD_FASTER
+    locale/browser/searchplugins/               (searchplugins/*.xml)
+    locale/browser/searchplugins/list.json      (search/list.json)
+#else
+    locale/browser/searchplugins/               (.deps/generated_@AB_CD@/*.xml)
+    locale/browser/searchplugins/list.json      (.deps/generated_@AB_CD@/list.json)
+#endif
+    locale/browser/searchplugins/images/amazon.ico     (searchplugins/images/amazon.ico)
+    locale/browser/searchplugins/images/ebay.ico       (searchplugins/images/ebay.ico)
+    locale/browser/searchplugins/images/wikipedia.ico  (searchplugins/images/wikipedia.ico)
+    locale/browser/searchplugins/images/yandex-en.ico  (searchplugins/images/yandex-en.ico)
+    locale/browser/searchplugins/images/yandex-ru.ico  (searchplugins/images/yandex-ru.ico)
 % locale browser-region @AB_CD@ %locale/browser-region/
     locale/browser-region/region.properties        (%chrome/browser-region/region.properties)
 # the following files are browser-specific overrides
     locale/browser/netError.dtd                (%chrome/overrides/netError.dtd)
     locale/browser/appstrings.properties       (%chrome/overrides/appstrings.properties)
     locale/browser/downloads/settingsChange.dtd  (%chrome/overrides/settingsChange.dtd)
 % locale pdf.js @AB_CD@ %locale/pdfviewer/
     locale/pdfviewer/viewer.properties             (%pdfviewer/viewer.properties)
--- a/browser/locales/moz.build
+++ b/browser/locales/moz.build
@@ -39,10 +39,16 @@ with Files("**"):
     BUG_COMPONENT = ("Firefox Build System", "General")
 
 with Files("all-locales"):
     BUG_COMPONENT = ("Core", "Localization")
 
 with Files("en-US/**"):
     BUG_COMPONENT = ("Core", "Localization")
 
+with Files("search/**"):
+    BUG_COMPONENT = ("Firefox", "Search")
+
+with Files("searchplugins/**"):
+    BUG_COMPONENT = ("Firefox", "Search")
+
 with Files("shipped-locales"):
     BUG_COMPONENT = ("Core", "Localization")
rename from browser/components/search/searchplugins/list.json
rename to browser/locales/search/list.json
rename from browser/components/search/searchplugins/allaannonser-sv-SE.xml
rename to browser/locales/searchplugins/allaannonser-sv-SE.xml
rename from browser/components/search/searchplugins/allegro-pl.xml
rename to browser/locales/searchplugins/allegro-pl.xml
rename from browser/components/search/searchplugins/amazon-au.xml
rename to browser/locales/searchplugins/amazon-au.xml
rename from browser/components/search/searchplugins/amazon-br.xml
rename to browser/locales/searchplugins/amazon-br.xml
rename from browser/components/search/searchplugins/amazon-ca.xml
rename to browser/locales/searchplugins/amazon-ca.xml
rename from browser/components/search/searchplugins/amazon-en-GB.xml
rename to browser/locales/searchplugins/amazon-en-GB.xml
rename from browser/components/search/searchplugins/amazon-france.xml
rename to browser/locales/searchplugins/amazon-france.xml
rename from browser/components/search/searchplugins/amazon-in.xml
rename to browser/locales/searchplugins/amazon-in.xml
rename from browser/components/search/searchplugins/amazon-it.xml
rename to browser/locales/searchplugins/amazon-it.xml
rename from browser/components/search/searchplugins/amazon-jp.xml
rename to browser/locales/searchplugins/amazon-jp.xml
rename from browser/components/search/searchplugins/amazon-mx.xml
rename to browser/locales/searchplugins/amazon-mx.xml
rename from browser/components/search/searchplugins/amazon-nl.xml
rename to browser/locales/searchplugins/amazon-nl.xml
rename from browser/components/search/searchplugins/amazondotcn.xml
rename to browser/locales/searchplugins/amazondotcn.xml
rename from browser/components/search/searchplugins/amazondotcom-de.xml
rename to browser/locales/searchplugins/amazondotcom-de.xml
rename from browser/components/search/searchplugins/amazondotcom.xml
rename to browser/locales/searchplugins/amazondotcom.xml
rename from browser/components/search/searchplugins/atlas-sk.xml
rename to browser/locales/searchplugins/atlas-sk.xml
rename from browser/components/search/searchplugins/azerdict.xml
rename to browser/locales/searchplugins/azerdict.xml
rename from browser/components/search/searchplugins/azet-sk.xml
rename to browser/locales/searchplugins/azet-sk.xml
rename from browser/components/search/searchplugins/baidu.xml
rename to browser/locales/searchplugins/baidu.xml
rename from browser/components/search/searchplugins/bbc-alba.xml
rename to browser/locales/searchplugins/bbc-alba.xml
rename from browser/components/search/searchplugins/bing.xml
rename to browser/locales/searchplugins/bing.xml
rename from browser/components/search/searchplugins/bok-NO.xml
rename to browser/locales/searchplugins/bok-NO.xml
rename from browser/components/search/searchplugins/bolcom-fy-NL.xml
rename to browser/locales/searchplugins/bolcom-fy-NL.xml
rename from browser/components/search/searchplugins/bolcom-nl.xml
rename to browser/locales/searchplugins/bolcom-nl.xml
rename from browser/components/search/searchplugins/bookplus-fi.xml
rename to browser/locales/searchplugins/bookplus-fi.xml
rename from browser/components/search/searchplugins/buscape.xml
rename to browser/locales/searchplugins/buscape.xml
rename from browser/components/search/searchplugins/ceneji.xml
rename to browser/locales/searchplugins/ceneji.xml
rename from browser/components/search/searchplugins/chambers-en-GB.xml
rename to browser/locales/searchplugins/chambers-en-GB.xml
rename from browser/components/search/searchplugins/cnrtl-tlfi-fr.xml
rename to browser/locales/searchplugins/cnrtl-tlfi-fr.xml
rename from browser/components/search/searchplugins/coccoc.xml
rename to browser/locales/searchplugins/coccoc.xml
rename from browser/components/search/searchplugins/danawa-kr.xml
rename to browser/locales/searchplugins/danawa-kr.xml
rename from browser/components/search/searchplugins/daum-kr.xml
rename to browser/locales/searchplugins/daum-kr.xml
rename from browser/components/search/searchplugins/ddg.xml
rename to browser/locales/searchplugins/ddg.xml
rename from browser/components/search/searchplugins/diccionariu-alla.xml
rename to browser/locales/searchplugins/diccionariu-alla.xml
rename from browser/components/search/searchplugins/dict-enlv.xml
rename to browser/locales/searchplugins/dict-enlv.xml
rename from browser/components/search/searchplugins/diec2.xml
rename to browser/locales/searchplugins/diec2.xml
rename from browser/components/search/searchplugins/drae.xml
rename to browser/locales/searchplugins/drae.xml
rename from browser/components/search/searchplugins/ebay-at.xml
rename to browser/locales/searchplugins/ebay-at.xml
rename from browser/components/search/searchplugins/ebay-au.xml
rename to browser/locales/searchplugins/ebay-au.xml
rename from browser/components/search/searchplugins/ebay-be.xml
rename to browser/locales/searchplugins/ebay-be.xml
rename from browser/components/search/searchplugins/ebay-ca.xml
rename to browser/locales/searchplugins/ebay-ca.xml
rename from browser/components/search/searchplugins/ebay-ch.xml
rename to browser/locales/searchplugins/ebay-ch.xml
rename from browser/components/search/searchplugins/ebay-de.xml
rename to browser/locales/searchplugins/ebay-de.xml
rename from browser/components/search/searchplugins/ebay-es.xml
rename to browser/locales/searchplugins/ebay-es.xml
rename from browser/components/search/searchplugins/ebay-fr.xml
rename to browser/locales/searchplugins/ebay-fr.xml
rename from browser/components/search/searchplugins/ebay-ie.xml
rename to browser/locales/searchplugins/ebay-ie.xml
rename from browser/components/search/searchplugins/ebay-it.xml
rename to browser/locales/searchplugins/ebay-it.xml
rename from browser/components/search/searchplugins/ebay-nl.xml
rename to browser/locales/searchplugins/ebay-nl.xml
rename from browser/components/search/searchplugins/ebay-uk.xml
rename to browser/locales/searchplugins/ebay-uk.xml
rename from browser/components/search/searchplugins/ebay.xml
rename to browser/locales/searchplugins/ebay.xml
rename from browser/components/search/searchplugins/ecosia.xml
rename to browser/locales/searchplugins/ecosia.xml
rename from browser/components/search/searchplugins/eki-ee.xml
rename to browser/locales/searchplugins/eki-ee.xml
rename from browser/components/search/searchplugins/elebila.xml
rename to browser/locales/searchplugins/elebila.xml
rename from browser/components/search/searchplugins/eudict.xml
rename to browser/locales/searchplugins/eudict.xml
rename from browser/components/search/searchplugins/faclair-beag.xml
rename to browser/locales/searchplugins/faclair-beag.xml
rename from browser/components/search/searchplugins/flip.xml
rename to browser/locales/searchplugins/flip.xml
rename from browser/components/search/searchplugins/freelang.xml
rename to browser/locales/searchplugins/freelang.xml
rename from browser/components/search/searchplugins/google-2018.xml
rename to browser/locales/searchplugins/google-2018.xml
rename from browser/components/search/searchplugins/google.xml
rename to browser/locales/searchplugins/google.xml
rename from browser/components/search/searchplugins/gujaratilexicon.xml
rename to browser/locales/searchplugins/gujaratilexicon.xml
rename from browser/components/search/searchplugins/gulesider-NO.xml
rename to browser/locales/searchplugins/gulesider-NO.xml
rename from browser/components/search/searchplugins/heureka-cz.xml
rename to browser/locales/searchplugins/heureka-cz.xml
rename from browser/components/search/searchplugins/hoepli.xml
rename to browser/locales/searchplugins/hoepli.xml
rename from browser/components/search/searchplugins/hotline-ua.xml
rename to browser/locales/searchplugins/hotline-ua.xml
rename from browser/components/search/searchplugins/images/amazon.ico
rename to browser/locales/searchplugins/images/amazon.ico
rename from browser/components/search/searchplugins/images/ebay.ico
rename to browser/locales/searchplugins/images/ebay.ico
rename from browser/components/search/searchplugins/images/wikipedia.ico
rename to browser/locales/searchplugins/images/wikipedia.ico
rename from browser/components/search/searchplugins/images/yandex-en.ico
rename to browser/locales/searchplugins/images/yandex-en.ico
rename from browser/components/search/searchplugins/images/yandex-ru.ico
rename to browser/locales/searchplugins/images/yandex-ru.ico
rename from browser/components/search/searchplugins/kannadastore.xml
rename to browser/locales/searchplugins/kannadastore.xml
rename from browser/components/search/searchplugins/kaz-kk.xml
rename to browser/locales/searchplugins/kaz-kk.xml
rename from browser/components/search/searchplugins/klask.xml
rename to browser/locales/searchplugins/klask.xml
rename from browser/components/search/searchplugins/leit-is.xml
rename to browser/locales/searchplugins/leit-is.xml
rename from browser/components/search/searchplugins/leo_ende_de-rm.xml
rename to browser/locales/searchplugins/leo_ende_de-rm.xml
rename from browser/components/search/searchplugins/leo_ende_de.xml
rename to browser/locales/searchplugins/leo_ende_de.xml
rename from browser/components/search/searchplugins/list-am.xml
rename to browser/locales/searchplugins/list-am.xml
rename from browser/components/search/searchplugins/longdo.xml
rename to browser/locales/searchplugins/longdo.xml
rename from browser/components/search/searchplugins/mailru.xml
rename to browser/locales/searchplugins/mailru.xml
rename from browser/components/search/searchplugins/mapy-cz.xml
rename to browser/locales/searchplugins/mapy-cz.xml
rename from browser/components/search/searchplugins/marktplaats-fy-NL.xml
rename to browser/locales/searchplugins/marktplaats-fy-NL.xml
rename from browser/components/search/searchplugins/marktplaats-nl.xml
rename to browser/locales/searchplugins/marktplaats-nl.xml
rename from browser/components/search/searchplugins/mercadolibre-ar.xml
rename to browser/locales/searchplugins/mercadolibre-ar.xml
rename from browser/components/search/searchplugins/mercadolibre-cl.xml
rename to browser/locales/searchplugins/mercadolibre-cl.xml
rename from browser/components/search/searchplugins/mercadolibre-mx.xml
rename to browser/locales/searchplugins/mercadolibre-mx.xml
rename from browser/components/search/searchplugins/mercadolivre.xml
rename to browser/locales/searchplugins/mercadolivre.xml
rename from browser/components/search/searchplugins/meta-ua.xml
rename to browser/locales/searchplugins/meta-ua.xml
rename from browser/components/search/searchplugins/morfix-dic.xml
rename to browser/locales/searchplugins/morfix-dic.xml
rename from browser/components/search/searchplugins/najdi-si.xml
rename to browser/locales/searchplugins/najdi-si.xml
rename from browser/components/search/searchplugins/naver-kr.xml
rename to browser/locales/searchplugins/naver-kr.xml
rename from browser/components/search/searchplugins/neti-ee.xml
rename to browser/locales/searchplugins/neti-ee.xml
rename from browser/components/search/searchplugins/odpiralni.xml
rename to browser/locales/searchplugins/odpiralni.xml
rename from browser/components/search/searchplugins/olx.xml
rename to browser/locales/searchplugins/olx.xml
rename from browser/components/search/searchplugins/oshiete-goo.xml
rename to browser/locales/searchplugins/oshiete-goo.xml
rename from browser/components/search/searchplugins/osta-ee.xml
rename to browser/locales/searchplugins/osta-ee.xml
rename from browser/components/search/searchplugins/ozonru.xml
rename to browser/locales/searchplugins/ozonru.xml
rename from browser/components/search/searchplugins/palasprint.xml
rename to browser/locales/searchplugins/palasprint.xml
rename from browser/components/search/searchplugins/paroledigenova-lij.xml
rename to browser/locales/searchplugins/paroledigenova-lij.xml
rename from browser/components/search/searchplugins/pazaruvaj.xml
rename to browser/locales/searchplugins/pazaruvaj.xml
rename from browser/components/search/searchplugins/pledarigrond.xml
rename to browser/locales/searchplugins/pledarigrond.xml
rename from browser/components/search/searchplugins/pogodak.xml
rename to browser/locales/searchplugins/pogodak.xml
rename from browser/components/search/searchplugins/portalbgdict.xml
rename to browser/locales/searchplugins/portalbgdict.xml
rename from browser/components/search/searchplugins/priberam.xml
rename to browser/locales/searchplugins/priberam.xml
rename from browser/components/search/searchplugins/priceru.xml
rename to browser/locales/searchplugins/priceru.xml
rename from browser/components/search/searchplugins/prisjakt-sv-SE.xml
rename to browser/locales/searchplugins/prisjakt-sv-SE.xml
rename from browser/components/search/searchplugins/pwn-pl.xml
rename to browser/locales/searchplugins/pwn-pl.xml
rename from browser/components/search/searchplugins/qwant.xml
rename to browser/locales/searchplugins/qwant.xml
rename from browser/components/search/searchplugins/qxl-NO.xml
rename to browser/locales/searchplugins/qxl-NO.xml
rename from browser/components/search/searchplugins/rakuten.xml
rename to browser/locales/searchplugins/rakuten.xml
rename from browser/components/search/searchplugins/readmoo.xml
rename to browser/locales/searchplugins/readmoo.xml
rename from browser/components/search/searchplugins/rediff.xml
rename to browser/locales/searchplugins/rediff.xml
rename from browser/components/search/searchplugins/reta-vortaro.xml
rename to browser/locales/searchplugins/reta-vortaro.xml
rename from browser/components/search/searchplugins/salidzinilv.xml
rename to browser/locales/searchplugins/salidzinilv.xml
rename from browser/components/search/searchplugins/sapo.xml
rename to browser/locales/searchplugins/sapo.xml
rename from browser/components/search/searchplugins/seznam-cz.xml
rename to browser/locales/searchplugins/seznam-cz.xml
rename from browser/components/search/searchplugins/slovnik-sk.xml
rename to browser/locales/searchplugins/slovnik-sk.xml
rename from browser/components/search/searchplugins/sslv.xml
rename to browser/locales/searchplugins/sslv.xml
rename from browser/components/search/searchplugins/sztaki-en-hu.xml
rename to browser/locales/searchplugins/sztaki-en-hu.xml
rename from browser/components/search/searchplugins/tearma.xml
rename to browser/locales/searchplugins/tearma.xml
rename from browser/components/search/searchplugins/termau.xml
rename to browser/locales/searchplugins/termau.xml
rename from browser/components/search/searchplugins/twitter-ja.xml
rename to browser/locales/searchplugins/twitter-ja.xml
rename from browser/components/search/searchplugins/twitter.xml
rename to browser/locales/searchplugins/twitter.xml
rename from browser/components/search/searchplugins/tyda-sv-SE.xml
rename to browser/locales/searchplugins/tyda-sv-SE.xml
rename from browser/components/search/searchplugins/vatera.xml
rename to browser/locales/searchplugins/vatera.xml
rename from browser/components/search/searchplugins/webdunia.xml
rename to browser/locales/searchplugins/webdunia.xml
rename from browser/components/search/searchplugins/wikipedia-NN.xml
rename to browser/locales/searchplugins/wikipedia-NN.xml
rename from browser/components/search/searchplugins/wikipedia-NO.xml
rename to browser/locales/searchplugins/wikipedia-NO.xml
rename from browser/components/search/searchplugins/wikipedia-af.xml
rename to browser/locales/searchplugins/wikipedia-af.xml
rename from browser/components/search/searchplugins/wikipedia-an.xml
rename to browser/locales/searchplugins/wikipedia-an.xml
rename from browser/components/search/searchplugins/wikipedia-ar.xml
rename to browser/locales/searchplugins/wikipedia-ar.xml
rename from browser/components/search/searchplugins/wikipedia-as.xml
rename to browser/locales/searchplugins/wikipedia-as.xml
rename from browser/components/search/searchplugins/wikipedia-ast.xml
rename to browser/locales/searchplugins/wikipedia-ast.xml
rename from browser/components/search/searchplugins/wikipedia-az.xml
rename to browser/locales/searchplugins/wikipedia-az.xml
rename from browser/components/search/searchplugins/wikipedia-be-tarask.xml
rename to browser/locales/searchplugins/wikipedia-be-tarask.xml
rename from browser/components/search/searchplugins/wikipedia-be.xml
rename to browser/locales/searchplugins/wikipedia-be.xml
rename from browser/components/search/searchplugins/wikipedia-bg.xml
rename to browser/locales/searchplugins/wikipedia-bg.xml
rename from browser/components/search/searchplugins/wikipedia-bn.xml
rename to browser/locales/searchplugins/wikipedia-bn.xml
rename from browser/components/search/searchplugins/wikipedia-br.xml
rename to browser/locales/searchplugins/wikipedia-br.xml
rename from browser/components/search/searchplugins/wikipedia-bs.xml
rename to browser/locales/searchplugins/wikipedia-bs.xml
rename from browser/components/search/searchplugins/wikipedia-ca.xml
rename to browser/locales/searchplugins/wikipedia-ca.xml
rename from browser/components/search/searchplugins/wikipedia-crh.xml
rename to browser/locales/searchplugins/wikipedia-crh.xml
rename from browser/components/search/searchplugins/wikipedia-cy.xml
rename to browser/locales/searchplugins/wikipedia-cy.xml
rename from browser/components/search/searchplugins/wikipedia-cz.xml
rename to browser/locales/searchplugins/wikipedia-cz.xml
rename from browser/components/search/searchplugins/wikipedia-da.xml
rename to browser/locales/searchplugins/wikipedia-da.xml
rename from browser/components/search/searchplugins/wikipedia-de.xml
rename to browser/locales/searchplugins/wikipedia-de.xml
rename from browser/components/search/searchplugins/wikipedia-dsb.xml
rename to browser/locales/searchplugins/wikipedia-dsb.xml
rename from browser/components/search/searchplugins/wikipedia-el.xml
rename to browser/locales/searchplugins/wikipedia-el.xml
rename from browser/components/search/searchplugins/wikipedia-eo.xml
rename to browser/locales/searchplugins/wikipedia-eo.xml
rename from browser/components/search/searchplugins/wikipedia-es.xml
rename to browser/locales/searchplugins/wikipedia-es.xml
rename from browser/components/search/searchplugins/wikipedia-et.xml
rename to browser/locales/searchplugins/wikipedia-et.xml
rename from browser/components/search/searchplugins/wikipedia-eu.xml
rename to browser/locales/searchplugins/wikipedia-eu.xml
rename from browser/components/search/searchplugins/wikipedia-fa.xml
rename to browser/locales/searchplugins/wikipedia-fa.xml
rename from browser/components/search/searchplugins/wikipedia-fi.xml
rename to browser/locales/searchplugins/wikipedia-fi.xml
rename from browser/components/search/searchplugins/wikipedia-fr.xml
rename to browser/locales/searchplugins/wikipedia-fr.xml
rename from browser/components/search/searchplugins/wikipedia-fy-NL.xml
rename to browser/locales/searchplugins/wikipedia-fy-NL.xml
rename from browser/components/search/searchplugins/wikipedia-ga-IE.xml
rename to browser/locales/searchplugins/wikipedia-ga-IE.xml
rename from browser/components/search/searchplugins/wikipedia-gd.xml
rename to browser/locales/searchplugins/wikipedia-gd.xml
rename from browser/components/search/searchplugins/wikipedia-gl.xml
rename to browser/locales/searchplugins/wikipedia-gl.xml
rename from browser/components/search/searchplugins/wikipedia-gn.xml
rename to browser/locales/searchplugins/wikipedia-gn.xml
rename from browser/components/search/searchplugins/wikipedia-gu.xml
rename to browser/locales/searchplugins/wikipedia-gu.xml
rename from browser/components/search/searchplugins/wikipedia-he.xml
rename to browser/locales/searchplugins/wikipedia-he.xml
rename from browser/components/search/searchplugins/wikipedia-hi.xml
rename to browser/locales/searchplugins/wikipedia-hi.xml
rename from browser/components/search/searchplugins/wikipedia-hr.xml
rename to browser/locales/searchplugins/wikipedia-hr.xml
rename from browser/components/search/searchplugins/wikipedia-hsb.xml
rename to browser/locales/searchplugins/wikipedia-hsb.xml
rename from browser/components/search/searchplugins/wikipedia-hu.xml
rename to browser/locales/searchplugins/wikipedia-hu.xml
rename from browser/components/search/searchplugins/wikipedia-hy.xml
rename to browser/locales/searchplugins/wikipedia-hy.xml
rename from browser/components/search/searchplugins/wikipedia-ia.xml
rename to browser/locales/searchplugins/wikipedia-ia.xml
rename from browser/components/search/searchplugins/wikipedia-id.xml
rename to browser/locales/searchplugins/wikipedia-id.xml
rename from browser/components/search/searchplugins/wikipedia-is.xml
rename to browser/locales/searchplugins/wikipedia-is.xml
rename from browser/components/search/searchplugins/wikipedia-it.xml
rename to browser/locales/searchplugins/wikipedia-it.xml
rename from browser/components/search/searchplugins/wikipedia-ja.xml
rename to browser/locales/searchplugins/wikipedia-ja.xml
rename from browser/components/search/searchplugins/wikipedia-ka.xml
rename to browser/locales/searchplugins/wikipedia-ka.xml
rename from browser/components/search/searchplugins/wikipedia-kab.xml
rename to browser/locales/searchplugins/wikipedia-kab.xml
rename from browser/components/search/searchplugins/wikipedia-kk.xml
rename to browser/locales/searchplugins/wikipedia-kk.xml
rename from browser/components/search/searchplugins/wikipedia-km.xml
rename to browser/locales/searchplugins/wikipedia-km.xml
rename from browser/components/search/searchplugins/wikipedia-kn.xml
rename to browser/locales/searchplugins/wikipedia-kn.xml
rename from browser/components/search/searchplugins/wikipedia-kr.xml
rename to browser/locales/searchplugins/wikipedia-kr.xml
rename from browser/components/search/searchplugins/wikipedia-lij.xml
rename to browser/locales/searchplugins/wikipedia-lij.xml
rename from browser/components/search/searchplugins/wikipedia-lo.xml
rename to browser/locales/searchplugins/wikipedia-lo.xml
rename from browser/components/search/searchplugins/wikipedia-lt.xml
rename to browser/locales/searchplugins/wikipedia-lt.xml
rename from browser/components/search/searchplugins/wikipedia-ltg.xml
rename to browser/locales/searchplugins/wikipedia-ltg.xml
rename from browser/components/search/searchplugins/wikipedia-lv.xml
rename to browser/locales/searchplugins/wikipedia-lv.xml
rename from browser/components/search/searchplugins/wikipedia-mk.xml
rename to browser/locales/searchplugins/wikipedia-mk.xml
rename from browser/components/search/searchplugins/wikipedia-ml.xml
rename to browser/locales/searchplugins/wikipedia-ml.xml
rename from browser/components/search/searchplugins/wikipedia-mr.xml
rename to browser/locales/searchplugins/wikipedia-mr.xml
rename from browser/components/search/searchplugins/wikipedia-ms.xml
rename to browser/locales/searchplugins/wikipedia-ms.xml
rename from browser/components/search/searchplugins/wikipedia-my.xml
rename to browser/locales/searchplugins/wikipedia-my.xml
rename from browser/components/search/searchplugins/wikipedia-ne.xml
rename to browser/locales/searchplugins/wikipedia-ne.xml
rename from browser/components/search/searchplugins/wikipedia-nl.xml
rename to browser/locales/searchplugins/wikipedia-nl.xml
rename from browser/components/search/searchplugins/wikipedia-oc.xml
rename to browser/locales/searchplugins/wikipedia-oc.xml
rename from browser/components/search/searchplugins/wikipedia-or.xml
rename to browser/locales/searchplugins/wikipedia-or.xml
rename from browser/components/search/searchplugins/wikipedia-pa.xml
rename to browser/locales/searchplugins/wikipedia-pa.xml
rename from browser/components/search/searchplugins/wikipedia-pl.xml
rename to browser/locales/searchplugins/wikipedia-pl.xml
rename from browser/components/search/searchplugins/wikipedia-pt.xml
rename to browser/locales/searchplugins/wikipedia-pt.xml
rename from browser/components/search/searchplugins/wikipedia-rm.xml
rename to browser/locales/searchplugins/wikipedia-rm.xml
rename from browser/components/search/searchplugins/wikipedia-ro.xml
rename to browser/locales/searchplugins/wikipedia-ro.xml
rename from browser/components/search/searchplugins/wikipedia-ru.xml
rename to browser/locales/searchplugins/wikipedia-ru.xml
rename from browser/components/search/searchplugins/wikipedia-si.xml
rename to browser/locales/searchplugins/wikipedia-si.xml
rename from browser/components/search/searchplugins/wikipedia-sk.xml
rename to browser/locales/searchplugins/wikipedia-sk.xml
rename from browser/components/search/searchplugins/wikipedia-sl.xml
rename to browser/locales/searchplugins/wikipedia-sl.xml
rename from browser/components/search/searchplugins/wikipedia-sq.xml
rename to browser/locales/searchplugins/wikipedia-sq.xml
rename from browser/components/search/searchplugins/wikipedia-sr.xml
rename to browser/locales/searchplugins/wikipedia-sr.xml
rename from browser/components/search/searchplugins/wikipedia-sv-SE.xml
rename to browser/locales/searchplugins/wikipedia-sv-SE.xml
rename from browser/components/search/searchplugins/wikipedia-ta.xml
rename to browser/locales/searchplugins/wikipedia-ta.xml
rename from browser/components/search/searchplugins/wikipedia-te.xml
rename to browser/locales/searchplugins/wikipedia-te.xml
rename from browser/components/search/searchplugins/wikipedia-th.xml
rename to browser/locales/searchplugins/wikipedia-th.xml
rename from browser/components/search/searchplugins/wikipedia-tl.xml
rename to browser/locales/searchplugins/wikipedia-tl.xml
rename from browser/components/search/searchplugins/wikipedia-tr.xml
rename to browser/locales/searchplugins/wikipedia-tr.xml
rename from browser/components/search/searchplugins/wikipedia-uk.xml
rename to browser/locales/searchplugins/wikipedia-uk.xml
rename from browser/components/search/searchplugins/wikipedia-ur.xml
rename to browser/locales/searchplugins/wikipedia-ur.xml
rename from browser/components/search/searchplugins/wikipedia-uz.xml
rename to browser/locales/searchplugins/wikipedia-uz.xml
rename from browser/components/search/searchplugins/wikipedia-vi.xml
rename to browser/locales/searchplugins/wikipedia-vi.xml
rename from browser/components/search/searchplugins/wikipedia-wo.xml
rename to browser/locales/searchplugins/wikipedia-wo.xml
rename from browser/components/search/searchplugins/wikipedia-zh-CN.xml
rename to browser/locales/searchplugins/wikipedia-zh-CN.xml
rename from browser/components/search/searchplugins/wikipedia-zh-TW.xml
rename to browser/locales/searchplugins/wikipedia-zh-TW.xml
rename from browser/components/search/searchplugins/wikipedia.xml
rename to browser/locales/searchplugins/wikipedia.xml
rename from browser/components/search/searchplugins/wiktionary-oc.xml
rename to browser/locales/searchplugins/wiktionary-oc.xml
rename from browser/components/search/searchplugins/wiktionary-te.xml
rename to browser/locales/searchplugins/wiktionary-te.xml
rename from browser/components/search/searchplugins/wolnelektury-pl.xml
rename to browser/locales/searchplugins/wolnelektury-pl.xml
rename from browser/components/search/searchplugins/yahoo-jp-auctions.xml
rename to browser/locales/searchplugins/yahoo-jp-auctions.xml
rename from browser/components/search/searchplugins/yahoo-jp.xml
rename to browser/locales/searchplugins/yahoo-jp.xml
rename from browser/components/search/searchplugins/yandex-az.xml
rename to browser/locales/searchplugins/yandex-az.xml
rename from browser/components/search/searchplugins/yandex-by.xml
rename to browser/locales/searchplugins/yandex-by.xml
rename from browser/components/search/searchplugins/yandex-en.xml
rename to browser/locales/searchplugins/yandex-en.xml
rename from browser/components/search/searchplugins/yandex-kk.xml
rename to browser/locales/searchplugins/yandex-kk.xml
rename from browser/components/search/searchplugins/yandex-ru.xml
rename to browser/locales/searchplugins/yandex-ru.xml
rename from browser/components/search/searchplugins/yandex-tr.xml
rename to browser/locales/searchplugins/yandex-tr.xml
rename from browser/components/search/searchplugins/zoznam-sk.xml
rename to browser/locales/searchplugins/zoznam-sk.xml
--- a/browser/modules/ContentSearch.jsm
+++ b/browser/modules/ContentSearch.jsm
@@ -102,17 +102,16 @@ var ContentSearch = {
   _destroyedPromise: null,
 
   // The current controller and browser in _onMessageGetSuggestions.  Allows
   // fetch cancellation from _cancelSuggestions.
   _currentSuggestion: null,
 
   init() {
     Services.obs.addObserver(this, "browser-search-engine-modified");
-    Services.obs.addObserver(this, "browser-search-service");
     Services.obs.addObserver(this, "shutdown-leaks-before-check");
     Services.prefs.addObserver("browser.search.hiddenOneOffs", this);
     this._stringBundle = Services.strings.createBundle("chrome://global/locale/autocomplete.properties");
   },
 
   get searchSuggestionUIStrings() {
     if (this._searchSuggestionUIStrings) {
       return this._searchSuggestionUIStrings;
@@ -129,17 +128,16 @@ var ContentSearch = {
   },
 
   destroy() {
     if (this._destroyedPromise) {
       return this._destroyedPromise;
     }
 
     Services.obs.removeObserver(this, "browser-search-engine-modified");
-    Services.obs.removeObserver(this, "browser-search-service");
     Services.obs.removeObserver(this, "shutdown-leaks-before-check");
 
     this._eventQueue.length = 0;
     this._destroyedPromise = Promise.resolve(this._currentEventPromise);
     return this._destroyedPromise;
   },
 
   /**
@@ -181,20 +179,16 @@ var ContentSearch = {
       type: "Message",
       data: msg,
     });
     this._processEventQueue();
   },
 
   observe(subj, topic, data) {
     switch (topic) {
-    case "browser-search-service":
-      if (data != "init-complete") {
-        break;
-      }
     case "nsPref:changed":
     case "browser-search-engine-modified":
       this._eventQueue.push({
         type: "Observe",
         data,
       });
       this._processEventQueue();
       break;
--- a/mobile/android/chrome/jar.mn
+++ b/mobile/android/chrome/jar.mn
@@ -82,8 +82,10 @@ chrome.jar:
 % override chrome://global/locale/global.dtd chrome://browser/locale/overrides/global.dtd
 % override chrome://global/locale/AccessFu.properties chrome://browser/locale/overrides/AccessFu.properties
 % override chrome://global/locale/dom/dom.properties chrome://browser/locale/overrides/dom/dom.properties
 % override chrome://global/locale/plugins.properties chrome://browser/locale/overrides/plugins.properties
 
 # mobile/locales/jar.mn resources and overrides
 % override chrome://global/locale/netError.dtd    chrome://browser/locale/netError.dtd
 % override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties
+% resource search-plugins chrome://browser/locale/searchplugins/
+
--- a/mobile/android/components/moz.build
+++ b/mobile/android/components/moz.build
@@ -46,10 +46,9 @@ EXTRA_COMPONENTS += [
 EXTRA_PP_COMPONENTS += [
     'MobileComponents.manifest',
 ]
 
 DIRS += [
     'extensions',
     'build',
     'geckoview',
-    'search',
 ]
deleted file mode 100644
--- a/mobile/android/components/search/jar.mn
+++ /dev/null
@@ -1,8 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-chrome.jar:
-        searchplugins/                                              (searchplugins/**)
-
-% resource search-plugins %searchplugins/
deleted file mode 100644
--- a/mobile/android/components/search/moz.build
+++ /dev/null
@@ -1,10 +0,0 @@
-# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
-# vim: set filetype=python:
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-JAR_MANIFESTS += ['jar.mn']
-
-with Files('**'):
-    BUG_COMPONENT = ('Firefox for Android', 'Awesomescreen')
--- a/mobile/android/installer/allowed-dupes.mn
+++ b/mobile/android/installer/allowed-dupes.mn
@@ -43,12 +43,8 @@ res/table-remove-column-active.gif
 res/table-remove-column-hover.gif
 res/table-remove-column.gif
 res/table-remove-row-active.gif
 res/table-remove-row-hover.gif
 res/table-remove-row.gif
 res/multilocale.txt
 modules/commonjs/index.js
 update.locale
-chrome/chrome/searchplugins/bolcom-fy-NL.xml
-chrome/chrome/searchplugins/bolcom-nl.xml
-chrome/chrome/searchplugins/ddg.xml
-chrome/chrome/searchplugins/duckduckgo.xml
--- a/mobile/locales/Makefile.in
+++ b/mobile/locales/Makefile.in
@@ -1,30 +1,144 @@
 # -*- makefile -*-
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
+#####################################################################################
+# Dependency build overhead:
+#   o always create/update/hard link targets boomkarks.json & searchplugins
+#   o latest symlink will be correct for the current locale / local build.
+#   o logic is essentially FORCE for language packs w/o all the build overhead
+#   o phase 2: replace hard links with a user function able to derive path
+#     based on current locale.
+#####################################################################################
+
 include $(topsrcdir)/config/config.mk
 
 USE_AUTOTARGETS_MK=1
 include $(topsrcdir)/config/makefiles/makeutils.mk
 
+# Separate items of contention
+tgt-gendir = .deps/generated_$(AB_CD)
+
+GENERATED_DIRS += .deps
+
 $(call errorIfEmpty,MOZ_BRANDING_DIRECTORY)
 SUBMAKEFILES += \
         $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/Makefile \
         $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales/Makefile \
         $(NULL)
 
+###########################################################################
+# Default target, preserve existing functionality for:
+#    gmake -C $obj/mobile/locales
+###########################################################################
+search-jar-default: search-jar
+
+
+###########################################################################
+## Searchlist plugin config
+plugin-file-array = \
+  $(srcdir)/search/list.json \
+  $(NULL)
+
+###########################################################################
+plugin_file    = $(firstword $(plugin-file-array))
+plugin-file-ts = $(tgt-gendir)/$(subst $(topsrcdir)/,$(NULL),$(plugin_file)).ts
+
+GARBAGE += $(plugin-file-ts)
+# ---------------------------------------------------------------------------
+# plugin-file-ts track searchlist file used ($path/list.json)
+# and time when the file was last modified.
+###########################################################################
+plugin-file-ts-preqs = \
+  $(call mkdir_deps,$(dir $(plugin-file-ts))) \
+  $(plugin_file) \
+  $(NULL)
+
+###########################################################################
+# Detect locale changes.  Force stale deps when searchlist file
+# or content has changed.
+$(plugin-file-ts): $(plugin-file-ts-preqs)
+	@touch $@
+
+
+###########################################################################
+search-jar-common = tmp-search.jar.mn
+search-jar        = $(tgt-gendir)/$(search-jar-common)
+search-jar-ts     = $(search-jar).ts
+
+GARBAGE += $(search-jar) $(search-jar-ts) $(search-jar-common)
+# ---------------------------------------------------------------------------
+# search-jar contains a list of providers for the search plugin
+###########################################################################
+SEARCH_PLUGINS := $(shell $(call py_action,output_searchplugins_list,$(srcdir)/search/list.json $(AB_CD)))
+$(call errorIfEmpty,SEARCH_PLUGINS)
+
+search-jar-preqs = \
+  $(plugin-file-ts) \
+  $(if $(IS_LANGUAGE_REPACK),FORCE) \
+  $(NULL)
+
+.PHONY: search-jar
+search-jar: $(search-jar)
+$(search-jar): $(search-jar-preqs)
+	@echo '\nGenerating: search-jar'
+	printf '$(AB_CD).jar:' > $@
+	ln -fn $@ .
+	printf '$(foreach plugin,$(SEARCH_PLUGINS),$(subst __PLUGIN_SUBST__,$(plugin), \n locale/$(AB_CD)/browser/searchplugins/__PLUGIN_SUBST__.xml (__PLUGIN_SUBST__.xml)))' >>  $@
+	printf '\n locale/$(AB_CD)/browser/searchplugins/list.json (list.json)' >> $@
+	@echo   >> $@
+
+###################
+search-dir-deps = \
+  $(plugin-file) \
+  $(dir-chrome) \
+  $(NULL)
+
+search-preqs =\
+  $(call mkdir_deps,$(dir $(search-jar-ts))) \
+  $(call mkdir_deps,$(FINAL_TARGET)/chrome) \
+  $(search-jar) \
+  $(search-dir-deps) \
+  $(if $(IS_LANGUAGE_REPACK),FORCE) \
+  $(GLOBAL_DEPS) \
+  $(NULL)
+
+.PHONY: searchplugins
+searchplugins: $(search-preqs)
+	$(call py_action,generate_searchjson,$(srcdir)/search/list.json $(AB_CD) $(tgt-gendir)/list.json)
+	$(call py_action,jar_maker,\
+          $(QUIET) -d $(FINAL_TARGET) \
+          -s $(topsrcdir)/$(relativesrcdir)/searchplugins \
+          -s $(tgt-gendir) \
+          $(MAKE_JARS_FLAGS) $(search-jar))
+	$(TOUCH) $@
+
 include $(topsrcdir)/config/rules.mk
 
+
+#############
+libs-preqs =\
+  $(call mkdir-deps,$(DIST)/install) \
+  $(NULL)
+
 libs-%: AB_CD=$*
-libs-%:
-	$(NSINSTALL) -D $(DIST)/install
+libs-%: $(libs-preqs)
+	$(display-deps)
 	@$(MAKE) -C $(DEPTH)/toolkit/locales libs-$*
+	@$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$*
 	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$*
 
 # Tailored target to just add the chrome processing for multi-locale builds
 chrome-%: AB_CD=$*
 chrome-%:
+	$(display-deps)
+	@$(MAKE) -B searchplugins AB_CD=$*
 	@$(MAKE) chrome AB_CD=$*
 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales chrome AB_CD=$*
+
+NO_JA_JP_MAC_AB_CD := $(if $(filter ja-JP-mac, $(AB_CD)),ja,$(AB_CD))
+
+
+export:: searchplugins
rename from mobile/android/components/search/searchplugins/list.json
rename to mobile/locales/search/list.json
rename from mobile/android/components/search/searchplugins/amazon-au.xml
rename to mobile/locales/searchplugins/amazon-au.xml
rename from mobile/android/components/search/searchplugins/amazon-br.xml
rename to mobile/locales/searchplugins/amazon-br.xml
rename from mobile/android/components/search/searchplugins/amazon-ca.xml
rename to mobile/locales/searchplugins/amazon-ca.xml
rename from mobile/android/components/search/searchplugins/amazon-co-uk.xml
rename to mobile/locales/searchplugins/amazon-co-uk.xml
rename from mobile/android/components/search/searchplugins/amazon-de.xml
rename to mobile/locales/searchplugins/amazon-de.xml
rename from mobile/android/components/search/searchplugins/amazon-fr.xml
rename to mobile/locales/searchplugins/amazon-fr.xml
rename from mobile/android/components/search/searchplugins/amazon-in.xml
rename to mobile/locales/searchplugins/amazon-in.xml
rename from mobile/android/components/search/searchplugins/amazon-it.xml
rename to mobile/locales/searchplugins/amazon-it.xml
rename from mobile/android/components/search/searchplugins/amazon-jp.xml
rename to mobile/locales/searchplugins/amazon-jp.xml
rename from mobile/android/components/search/searchplugins/amazon-mx.xml
rename to mobile/locales/searchplugins/amazon-mx.xml
rename from mobile/android/components/search/searchplugins/amazon-nl.xml
rename to mobile/locales/searchplugins/amazon-nl.xml
rename from mobile/android/components/search/searchplugins/amazondotcom.xml
rename to mobile/locales/searchplugins/amazondotcom.xml
rename from mobile/android/components/search/searchplugins/azerdict.xml
rename to mobile/locales/searchplugins/azerdict.xml
rename from mobile/android/components/search/searchplugins/azet-sk.xml
rename to mobile/locales/searchplugins/azet-sk.xml
rename from mobile/android/components/search/searchplugins/baidu.xml
rename to mobile/locales/searchplugins/baidu.xml
rename from mobile/android/components/search/searchplugins/bing.xml
rename to mobile/locales/searchplugins/bing.xml
rename from mobile/android/components/search/searchplugins/bolcom-fy-NL.xml
rename to mobile/locales/searchplugins/bolcom-fy-NL.xml
rename from mobile/android/components/search/searchplugins/bolcom-nl.xml
rename to mobile/locales/searchplugins/bolcom-nl.xml
rename from mobile/android/components/search/searchplugins/ceneje.xml
rename to mobile/locales/searchplugins/ceneje.xml
rename from mobile/android/components/search/searchplugins/coccoc.xml
rename to mobile/locales/searchplugins/coccoc.xml
rename from mobile/android/components/search/searchplugins/danawa-kr.xml
rename to mobile/locales/searchplugins/danawa-kr.xml
rename from mobile/android/components/search/searchplugins/daum-kr.xml
rename to mobile/locales/searchplugins/daum-kr.xml
rename from mobile/android/components/search/searchplugins/ddg.xml
rename to mobile/locales/searchplugins/ddg.xml
rename from mobile/android/components/search/searchplugins/diec2.xml
rename to mobile/locales/searchplugins/diec2.xml
rename from mobile/android/components/search/searchplugins/drae.xml
rename to mobile/locales/searchplugins/drae.xml
rename from mobile/android/components/search/searchplugins/duckduckgo.xml
rename to mobile/locales/searchplugins/duckduckgo.xml
rename from mobile/android/components/search/searchplugins/elebila.xml
rename to mobile/locales/searchplugins/elebila.xml
rename from mobile/android/components/search/searchplugins/faclair-beag.xml
rename to mobile/locales/searchplugins/faclair-beag.xml
rename from mobile/android/components/search/searchplugins/google-2018.xml
rename to mobile/locales/searchplugins/google-2018.xml
rename from mobile/android/components/search/searchplugins/google.xml
rename to mobile/locales/searchplugins/google.xml
rename from mobile/android/components/search/searchplugins/gulesider-mobile-NO.xml
rename to mobile/locales/searchplugins/gulesider-mobile-NO.xml
rename from mobile/android/components/search/searchplugins/heureka-cz.xml
rename to mobile/locales/searchplugins/heureka-cz.xml
rename from mobile/android/components/search/searchplugins/hotline-ua.xml
rename to mobile/locales/searchplugins/hotline-ua.xml
rename from mobile/android/components/search/searchplugins/leit-is.xml
rename to mobile/locales/searchplugins/leit-is.xml
rename from mobile/android/components/search/searchplugins/leo_ende_de.xml
rename to mobile/locales/searchplugins/leo_ende_de.xml
rename from mobile/android/components/search/searchplugins/list-am.xml
rename to mobile/locales/searchplugins/list-am.xml
rename from mobile/android/components/search/searchplugins/mapy-cz.xml
rename to mobile/locales/searchplugins/mapy-cz.xml
rename from mobile/android/components/search/searchplugins/mercadolibre-ar.xml
rename to mobile/locales/searchplugins/mercadolibre-ar.xml
rename from mobile/android/components/search/searchplugins/mercadolibre-cl.xml
rename to mobile/locales/searchplugins/mercadolibre-cl.xml
rename from mobile/android/components/search/searchplugins/mercadolibre-mx.xml
rename to mobile/locales/searchplugins/mercadolibre-mx.xml
rename from mobile/android/components/search/searchplugins/naver-kr.xml
rename to mobile/locales/searchplugins/naver-kr.xml
rename from mobile/android/components/search/searchplugins/odpiralni.xml
rename to mobile/locales/searchplugins/odpiralni.xml
rename from mobile/android/components/search/searchplugins/pazaruvaj.xml
rename to mobile/locales/searchplugins/pazaruvaj.xml
rename from mobile/android/components/search/searchplugins/pledarigrond.xml
rename to mobile/locales/searchplugins/pledarigrond.xml
rename from mobile/android/components/search/searchplugins/prisjakt-sv-SE.xml
rename to mobile/locales/searchplugins/prisjakt-sv-SE.xml
rename from mobile/android/components/search/searchplugins/qwant.xml
rename to mobile/locales/searchplugins/qwant.xml
rename from mobile/android/components/search/searchplugins/rediff.xml
rename to mobile/locales/searchplugins/rediff.xml
rename from mobile/android/components/search/searchplugins/reta-vortaro.xml
rename to mobile/locales/searchplugins/reta-vortaro.xml
rename from mobile/android/components/search/searchplugins/salidzinilv.xml
rename to mobile/locales/searchplugins/salidzinilv.xml
rename from mobile/android/components/search/searchplugins/seznam-cz.xml
rename to mobile/locales/searchplugins/seznam-cz.xml
rename from mobile/android/components/search/searchplugins/skroutz.xml
rename to mobile/locales/searchplugins/skroutz.xml
rename from mobile/android/components/search/searchplugins/slovnik-sk.xml
rename to mobile/locales/searchplugins/slovnik-sk.xml
rename from mobile/android/components/search/searchplugins/sslv.xml
rename to mobile/locales/searchplugins/sslv.xml
rename from mobile/android/components/search/searchplugins/sztaki-en-hu.xml
rename to mobile/locales/searchplugins/sztaki-en-hu.xml
rename from mobile/android/components/search/searchplugins/taobao.xml
rename to mobile/locales/searchplugins/taobao.xml
rename from mobile/android/components/search/searchplugins/tearma.xml
rename to mobile/locales/searchplugins/tearma.xml
rename from mobile/android/components/search/searchplugins/twitter-ja.xml
rename to mobile/locales/searchplugins/twitter-ja.xml
rename from mobile/android/components/search/searchplugins/twitter.xml
rename to mobile/locales/searchplugins/twitter.xml
rename from mobile/android/components/search/searchplugins/vatera.xml
rename to mobile/locales/searchplugins/vatera.xml
rename from mobile/android/components/search/searchplugins/wikipedia-NN.xml
rename to mobile/locales/searchplugins/wikipedia-NN.xml
rename from mobile/android/components/search/searchplugins/wikipedia-NO.xml
rename to mobile/locales/searchplugins/wikipedia-NO.xml
rename from mobile/android/components/search/searchplugins/wikipedia-an.xml
rename to mobile/locales/searchplugins/wikipedia-an.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ar.xml
rename to mobile/locales/searchplugins/wikipedia-ar.xml
rename from mobile/android/components/search/searchplugins/wikipedia-as.xml
rename to mobile/locales/searchplugins/wikipedia-as.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ast.xml
rename to mobile/locales/searchplugins/wikipedia-ast.xml
rename from mobile/android/components/search/searchplugins/wikipedia-az.xml
rename to mobile/locales/searchplugins/wikipedia-az.xml
rename from mobile/android/components/search/searchplugins/wikipedia-be.xml
rename to mobile/locales/searchplugins/wikipedia-be.xml
rename from mobile/android/components/search/searchplugins/wikipedia-bg.xml
rename to mobile/locales/searchplugins/wikipedia-bg.xml
rename from mobile/android/components/search/searchplugins/wikipedia-bn.xml
rename to mobile/locales/searchplugins/wikipedia-bn.xml
rename from mobile/android/components/search/searchplugins/wikipedia-br.xml
rename to mobile/locales/searchplugins/wikipedia-br.xml
rename from mobile/android/components/search/searchplugins/wikipedia-bs.xml
rename to mobile/locales/searchplugins/wikipedia-bs.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ca.xml
rename to mobile/locales/searchplugins/wikipedia-ca.xml
rename from mobile/android/components/search/searchplugins/wikipedia-cy.xml
rename to mobile/locales/searchplugins/wikipedia-cy.xml
rename from mobile/android/components/search/searchplugins/wikipedia-cz.xml
rename to mobile/locales/searchplugins/wikipedia-cz.xml
rename from mobile/android/components/search/searchplugins/wikipedia-da.xml
rename to mobile/locales/searchplugins/wikipedia-da.xml
rename from mobile/android/components/search/searchplugins/wikipedia-de.xml
rename to mobile/locales/searchplugins/wikipedia-de.xml
rename from mobile/android/components/search/searchplugins/wikipedia-dsb.xml
rename to mobile/locales/searchplugins/wikipedia-dsb.xml
rename from mobile/android/components/search/searchplugins/wikipedia-el.xml
rename to mobile/locales/searchplugins/wikipedia-el.xml
rename from mobile/android/components/search/searchplugins/wikipedia-eo.xml
rename to mobile/locales/searchplugins/wikipedia-eo.xml
rename from mobile/android/components/search/searchplugins/wikipedia-es.xml
rename to mobile/locales/searchplugins/wikipedia-es.xml
rename from mobile/android/components/search/searchplugins/wikipedia-et.xml
rename to mobile/locales/searchplugins/wikipedia-et.xml
rename from mobile/android/components/search/searchplugins/wikipedia-eu.xml
rename to mobile/locales/searchplugins/wikipedia-eu.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fa.xml
rename to mobile/locales/searchplugins/wikipedia-fa.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fi.xml
rename to mobile/locales/searchplugins/wikipedia-fi.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fr.xml
rename to mobile/locales/searchplugins/wikipedia-fr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-fy-NL.xml
rename to mobile/locales/searchplugins/wikipedia-fy-NL.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ga-IE.xml
rename to mobile/locales/searchplugins/wikipedia-ga-IE.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gd.xml
rename to mobile/locales/searchplugins/wikipedia-gd.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gl.xml
rename to mobile/locales/searchplugins/wikipedia-gl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gn.xml
rename to mobile/locales/searchplugins/wikipedia-gn.xml
rename from mobile/android/components/search/searchplugins/wikipedia-gu.xml
rename to mobile/locales/searchplugins/wikipedia-gu.xml
rename from mobile/android/components/search/searchplugins/wikipedia-he.xml
rename to mobile/locales/searchplugins/wikipedia-he.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hi.xml
rename to mobile/locales/searchplugins/wikipedia-hi.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hr.xml
rename to mobile/locales/searchplugins/wikipedia-hr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hsb.xml
rename to mobile/locales/searchplugins/wikipedia-hsb.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hu.xml
rename to mobile/locales/searchplugins/wikipedia-hu.xml
rename from mobile/android/components/search/searchplugins/wikipedia-hy-AM.xml
rename to mobile/locales/searchplugins/wikipedia-hy-AM.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ia.xml
rename to mobile/locales/searchplugins/wikipedia-ia.xml
rename from mobile/android/components/search/searchplugins/wikipedia-id.xml
rename to mobile/locales/searchplugins/wikipedia-id.xml
rename from mobile/android/components/search/searchplugins/wikipedia-is.xml
rename to mobile/locales/searchplugins/wikipedia-is.xml
rename from mobile/android/components/search/searchplugins/wikipedia-it.xml
rename to mobile/locales/searchplugins/wikipedia-it.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ja.xml
rename to mobile/locales/searchplugins/wikipedia-ja.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ka.xml
rename to mobile/locales/searchplugins/wikipedia-ka.xml
rename from mobile/android/components/search/searchplugins/wikipedia-kab.xml
rename to mobile/locales/searchplugins/wikipedia-kab.xml
rename from mobile/android/components/search/searchplugins/wikipedia-kk.xml
rename to mobile/locales/searchplugins/wikipedia-kk.xml
rename from mobile/android/components/search/searchplugins/wikipedia-km.xml
rename to mobile/locales/searchplugins/wikipedia-km.xml
rename from mobile/android/components/search/searchplugins/wikipedia-kn.xml
rename to mobile/locales/searchplugins/wikipedia-kn.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lij.xml
rename to mobile/locales/searchplugins/wikipedia-lij.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lo.xml
rename to mobile/locales/searchplugins/wikipedia-lo.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lt.xml
rename to mobile/locales/searchplugins/wikipedia-lt.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ltg.xml
rename to mobile/locales/searchplugins/wikipedia-ltg.xml
rename from mobile/android/components/search/searchplugins/wikipedia-lv.xml
rename to mobile/locales/searchplugins/wikipedia-lv.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ml.xml
rename to mobile/locales/searchplugins/wikipedia-ml.xml
rename from mobile/android/components/search/searchplugins/wikipedia-mr.xml
rename to mobile/locales/searchplugins/wikipedia-mr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ms.xml
rename to mobile/locales/searchplugins/wikipedia-ms.xml
rename from mobile/android/components/search/searchplugins/wikipedia-my.xml
rename to mobile/locales/searchplugins/wikipedia-my.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ne.xml
rename to mobile/locales/searchplugins/wikipedia-ne.xml
rename from mobile/android/components/search/searchplugins/wikipedia-nl.xml
rename to mobile/locales/searchplugins/wikipedia-nl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-oc.xml
rename to mobile/locales/searchplugins/wikipedia-oc.xml
rename from mobile/android/components/search/searchplugins/wikipedia-or.xml
rename to mobile/locales/searchplugins/wikipedia-or.xml
rename from mobile/android/components/search/searchplugins/wikipedia-pa.xml
rename to mobile/locales/searchplugins/wikipedia-pa.xml
rename from mobile/android/components/search/searchplugins/wikipedia-pl.xml
rename to mobile/locales/searchplugins/wikipedia-pl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-pt.xml
rename to mobile/locales/searchplugins/wikipedia-pt.xml
rename from mobile/android/components/search/searchplugins/wikipedia-rm.xml
rename to mobile/locales/searchplugins/wikipedia-rm.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ro.xml
rename to mobile/locales/searchplugins/wikipedia-ro.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ru.xml
rename to mobile/locales/searchplugins/wikipedia-ru.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sk.xml
rename to mobile/locales/searchplugins/wikipedia-sk.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sl.xml
rename to mobile/locales/searchplugins/wikipedia-sl.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sq.xml
rename to mobile/locales/searchplugins/wikipedia-sq.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sr.xml
rename to mobile/locales/searchplugins/wikipedia-sr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-sv-SE.xml
rename to mobile/locales/searchplugins/wikipedia-sv-SE.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ta.xml
rename to mobile/locales/searchplugins/wikipedia-ta.xml
rename from mobile/android/components/search/searchplugins/wikipedia-te.xml
rename to mobile/locales/searchplugins/wikipedia-te.xml
rename from mobile/android/components/search/searchplugins/wikipedia-th.xml
rename to mobile/locales/searchplugins/wikipedia-th.xml
rename from mobile/android/components/search/searchplugins/wikipedia-tr.xml
rename to mobile/locales/searchplugins/wikipedia-tr.xml
rename from mobile/android/components/search/searchplugins/wikipedia-uk.xml
rename to mobile/locales/searchplugins/wikipedia-uk.xml
rename from mobile/android/components/search/searchplugins/wikipedia-ur.xml
rename to mobile/locales/searchplugins/wikipedia-ur.xml
rename from mobile/android/components/search/searchplugins/wikipedia-uz.xml
rename to mobile/locales/searchplugins/wikipedia-uz.xml
rename from mobile/android/components/search/searchplugins/wikipedia-vi.xml
rename to mobile/locales/searchplugins/wikipedia-vi.xml
rename from mobile/android/components/search/searchplugins/wikipedia-wo.xml
rename to mobile/locales/searchplugins/wikipedia-wo.xml
rename from mobile/android/components/search/searchplugins/wikipedia-zh-CN.xml
rename to mobile/locales/searchplugins/wikipedia-zh-CN.xml
rename from mobile/android/components/search/searchplugins/wikipedia-zh-TW.xml
rename to mobile/locales/searchplugins/wikipedia-zh-TW.xml
rename from mobile/android/components/search/searchplugins/wikipedia.xml
rename to mobile/locales/searchplugins/wikipedia.xml
rename from mobile/android/components/search/searchplugins/wiktionary-kn.xml
rename to mobile/locales/searchplugins/wiktionary-kn.xml
rename from mobile/android/components/search/searchplugins/wiktionary-oc.xml
rename to mobile/locales/searchplugins/wiktionary-oc.xml
rename from mobile/android/components/search/searchplugins/wiktionary-or.xml
rename to mobile/locales/searchplugins/wiktionary-or.xml
rename from mobile/android/components/search/searchplugins/wiktionary-ta.xml
rename to mobile/locales/searchplugins/wiktionary-ta.xml
rename from mobile/android/components/search/searchplugins/wiktionary-te.xml
rename to mobile/locales/searchplugins/wiktionary-te.xml
rename from mobile/android/components/search/searchplugins/yahoo-jp.xml
rename to mobile/locales/searchplugins/yahoo-jp.xml
rename from mobile/android/components/search/searchplugins/yandex-en.xml
rename to mobile/locales/searchplugins/yandex-en.xml
rename from mobile/android/components/search/searchplugins/yandex-ru.xml
rename to mobile/locales/searchplugins/yandex-ru.xml
rename from mobile/android/components/search/searchplugins/yandex-tr.xml
rename to mobile/locales/searchplugins/yandex-tr.xml
rename from mobile/android/components/search/searchplugins/yandex.by.xml
rename to mobile/locales/searchplugins/yandex.by.xml
rename from mobile/android/components/search/searchplugins/yandex.xml
rename to mobile/locales/searchplugins/yandex.xml
--- a/toolkit/components/search/nsSearchService.js
+++ b/toolkit/components/search/nsSearchService.js
@@ -57,17 +57,17 @@ const NS_APP_DISTRIBUTION_SEARCH_DIR_LIS
 const NS_APP_USER_PROFILE_50_DIR = "ProfD";
 
 // We load plugins from APP_SEARCH_PREFIX, where a list.json
 // file needs to exist to list available engines.
 const APP_SEARCH_PREFIX = "resource://search-plugins/";
 
 // See documentation in nsIBrowserSearchService.idl.
 const SEARCH_ENGINE_TOPIC        = "browser-search-engine-modified";
-const TOPIC_LOCALES_CHANGE       = "intl:app-locales-changed";
+const REQ_LOCALES_CHANGED_TOPIC  = "intl:requested-locales-changed";
 const QUIT_APPLICATION_TOPIC     = "quit-application";
 
 const SEARCH_ENGINE_REMOVED      = "engine-removed";
 const SEARCH_ENGINE_ADDED        = "engine-added";
 const SEARCH_ENGINE_CHANGED      = "engine-changed";
 const SEARCH_ENGINE_LOADED       = "engine-loaded";
 const SEARCH_ENGINE_CURRENT      = "engine-current";
 const SEARCH_ENGINE_DEFAULT      = "engine-default";
@@ -3004,19 +3004,19 @@ SearchService.prototype = {
         await ensureKnownCountryCode(this);
         // Due to the HTTP requests done by ensureKnownCountryCode, it's possible that
         // at this point a synchronous init has been forced by other code.
         if (!gInitialized)
           await this._asyncLoadEngines(cache);
 
         // Typically we'll re-init as a result of a pref observer,
         // so signal to 'callers' that we're done.
-        gInitialized = true;
         Services.obs.notifyObservers(null, SEARCH_SERVICE_TOPIC, "init-complete");
         this._recordEngineTelemetry();
+        gInitialized = true;
       } catch (err) {
         LOG("Reinit failed: " + err);
         Services.obs.notifyObservers(null, SEARCH_SERVICE_TOPIC, "reinit-failed");
       } finally {
         Services.obs.notifyObservers(null, SEARCH_SERVICE_TOPIC, "reinit-complete");
       }
     })();
   },
@@ -3401,41 +3401,24 @@ SearchService.prototype = {
       request.send();
     });
 
     this._parseListJSON(list, uris);
     return uris;
   },
 
   _parseListJSON: function SRCH_SVC_parseListJSON(list, uris) {
-    let json;
+    let searchSettings;
     try {
-      json = JSON.parse(list);
+      searchSettings = JSON.parse(list);
     } catch (e) {
-      Cu.reportError("parseListJSON: Failed to parse list.json: " + e);
-      dump("parseListJSON: Failed to parse list.json: " + e + "\n");
+      LOG("failing to parse list.json: " + e);
       return;
     }
 
-    let searchSettings;
-    let locale = Services.locale.getAppLocaleAsBCP47();
-    if ("locales" in json &&
-        locale in json.locales) {
-      searchSettings = json.locales[locale];
-    } else {
-      // No locales were found, so use the JSON as is.
-      // It should have a default section.
-      if (!("default" in json)) {
-        Cu.reportError("parseListJSON: Missing default in list.json");
-        dump("parseListJSON: Missing default in list.json\n");
-        return;
-      }
-      searchSettings = json;
-    }
-
     // Check if we have a useable country specific list of visible default engines.
     // This will only be set if we got the list from the Mozilla search server;
     // it will not be set for distributions.
     let engineNames;
     let visibleDefaultEngines = this.getVerifiedGlobalAttr("visibleDefaultEngines");
     if (visibleDefaultEngines) {
       let jarNames = new Set();
       for (let region in searchSettings) {
@@ -3477,66 +3460,48 @@ SearchService.prototype = {
           "visibleDefaultEngines" in searchSettings[searchRegion]) {
         engineNames = searchSettings[searchRegion].visibleDefaultEngines;
       } else {
         engineNames = searchSettings.default.visibleDefaultEngines;
       }
     }
 
     // Remove any engine names that are supposed to be ignored.
-    // This pref is only allowed in a partner distribution.
+    // This pref is only allows in a partner distribution.
     let branch = Services.prefs.getDefaultBranch(BROWSER_SEARCH_PREF);
     if (isPartnerBuild() &&
         branch.getPrefType("ignoredJAREngines") == branch.PREF_STRING) {
       let ignoredJAREngines = branch.getCharPref("ignoredJAREngines")
                                     .split(",");
       let filteredEngineNames = engineNames.filter(e => !ignoredJAREngines.includes(e));
       // Don't allow all engines to be hidden
       if (filteredEngineNames.length > 0) {
         engineNames = filteredEngineNames;
       }
     }
 
-    if ("regionOverrides" in json &&
-        searchRegion in json.regionOverrides) {
-      for (let engine in json.regionOverrides[searchRegion]) {
-        let index = engineNames.indexOf(engine);
-        if (index > -1) {
-          engineNames[index] = json.regionOverrides[searchRegion][engine];
-        }
-      }
-    }
-
     for (let name of engineNames) {
       uris.push(APP_SEARCH_PREFIX + name + ".xml");
     }
 
     // Store this so that it can be used while writing the cache file.
     this._visibleDefaultEngines = engineNames;
 
     if (searchRegion && searchRegion in searchSettings &&
         "searchDefault" in searchSettings[searchRegion]) {
       this._searchDefault = searchSettings[searchRegion].searchDefault;
-    } else if ("searchDefault" in searchSettings.default) {
+    } else {
       this._searchDefault = searchSettings.default.searchDefault;
-    } else {
-      this._searchDefault = json.default.searchDefault;
-    }
-
-    if (!this._searchDefault) {
-      Cu.reportError("parseListJSON: No searchDefault");
     }
 
     if (searchRegion && searchRegion in searchSettings &&
         "searchOrder" in searchSettings[searchRegion]) {
       this._searchOrder = searchSettings[searchRegion].searchOrder;
     } else if ("searchOrder" in searchSettings.default) {
       this._searchOrder = searchSettings.default.searchOrder;
-    } else if ("searchOrder" in json.default) {
-      this._searchOrder = json.default.searchOrder;
     }
   },
 
   _saveSortedEngineList: function SRCH_SVC_saveSortedEngineList() {
     LOG("SRCH_SVC_saveSortedEngineList: starting");
 
     // Set the useDB pref to indicate that from now on we should use the order
     // information stored in the database.
@@ -4451,20 +4416,19 @@ SearchService.prototype = {
             break;
         }
         break;
 
       case QUIT_APPLICATION_TOPIC:
         this._removeObservers();
         break;
 
-      case TOPIC_LOCALES_CHANGE:
+      case REQ_LOCALES_CHANGED_TOPIC:
         // Locale changed. Re-init. We rely on observers, because we can't
         // return this promise to anyone.
-        // FYI, This is also used by the search tests to do an async reinit.
         this._asyncReInit();
         break;
     }
   },
 
   // nsITimerCallback
   notify: function SRCH_SVC_notify(aTimer) {
     LOG("_notify: checking for updates");
@@ -4509,17 +4473,20 @@ SearchService.prototype = {
       // There might be a race between synchronous and asynchronous
       // initialization for which we try to register the observers twice.
       return;
     }
     this._observersAdded = true;
 
     Services.obs.addObserver(this, SEARCH_ENGINE_TOPIC);
     Services.obs.addObserver(this, QUIT_APPLICATION_TOPIC);
-    Services.obs.addObserver(this, TOPIC_LOCALES_CHANGE);
+
+    if (AppConstants.MOZ_BUILD_APP == "mobile/android") {
+      Services.obs.addObserver(this, REQ_LOCALES_CHANGED_TOPIC);
+    }
 
     // The current stage of shutdown. Used to help analyze crash
     // signatures in case of shutdown timeout.
     let shutdownState = {
       step: "Not started",
       latestError: {
         message: undefined,
         stack: undefined
@@ -4551,17 +4518,20 @@ SearchService.prototype = {
       () => shutdownState
     );
   },
   _observersAdded: false,
 
   _removeObservers: function SRCH_SVC_removeObservers() {
     Services.obs.removeObserver(this, SEARCH_ENGINE_TOPIC);
     Services.obs.removeObserver(this, QUIT_APPLICATION_TOPIC);
-    Services.obs.removeObserver(this, TOPIC_LOCALES_CHANGE);
+
+    if (AppConstants.MOZ_BUILD_APP == "mobile/android") {
+      Services.obs.removeObserver(this, REQ_LOCALES_CHANGED_TOPIC);
+    }
   },
 
   QueryInterface: ChromeUtils.generateQI([
     Ci.nsIBrowserSearchService,
     Ci.nsIObserver,
     Ci.nsITimerCallback
   ])
 };
--- a/toolkit/components/search/tests/xpcshell/data/list.json
+++ b/toolkit/components/search/tests/xpcshell/data/list.json
@@ -1,30 +1,9 @@
 {
   "default": {
     "searchDefault": "Test search engine",
     "searchOrder": ["engine-resourceicon", "engine-chromeicon"],
     "visibleDefaultEngines": [
       "engine", "engine-pref", "engine-rel-searchform-purpose", "engine-system-purpose", "engine-chromeicon", "engine-resourceicon"
     ]
-  },
-  "regionOverrides": {
-    "RU": {
-      "engine": "engine-chromeicon"
-    }
-  },
-  "locales": {
-    "de": {
-      "default": {
-        "visibleDefaultEngines": [
-          "engine"
-        ]
-      }
-    },
-    "fr": {
-      "default": {
-        "visibleDefaultEngines": [
-          "engine", "engine-pref"
-        ]
-      }
-    }
   }
 }
--- a/toolkit/components/search/tests/xpcshell/head_search.js
+++ b/toolkit/components/search/tests/xpcshell/head_search.js
@@ -227,17 +227,17 @@ function isUSTimezone() {
   // Hawaii-Aleutian Standard Time (http://www.timeanddate.com/time/zones/hast)
 
   let UTCOffset = (new Date()).getTimezoneOffset();
   return UTCOffset >= 150 && UTCOffset <= 600;
 }
 
 const kDefaultenginenamePref = "browser.search.defaultenginename";
 const kTestEngineName = "Test search engine";
-const TOPIC_LOCALES_CHANGE = "intl:app-locales-changed";
+const REQ_LOCALES_CHANGED_TOPIC = "intl:requested-locales-changed";
 
 function getDefaultEngineName(isUS) {
   // The list of visibleDefaultEngines needs to match or the cache will be ignored.
   let chan = NetUtil.newChannel({
     uri: "resource://search-plugins/list.json",
     loadUsingSystemPrincipal: true
   });
   let searchSettings = parseJsonFromStream(chan.open2());
@@ -458,17 +458,17 @@ function asyncInit() {
     });
   });
 }
 
 function asyncReInit() {
   let promise = waitForSearchNotification("reinit-complete");
 
   Services.search.QueryInterface(Ci.nsIObserver)
-          .observe(null, TOPIC_LOCALES_CHANGE, null);
+          .observe(null, REQ_LOCALES_CHANGED_TOPIC, null);
 
   return promise;
 }
 
 // This "enum" from nsSearchService.js
 const TELEMETRY_RESULT_ENUM = {
   SUCCESS: 0,
   SUCCESS_WITHOUT_DATA: 1,
deleted file mode 100644
--- a/toolkit/components/search/tests/xpcshell/test_list_json_locale.js
+++ /dev/null
@@ -1,60 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/* Check default search engine is picked from list.json searchDefault */
-
-"use strict";
-
-function run_test() {
-  Assert.ok(!Services.search.isInitialized, "search isn't initialized yet");
-
-  run_next_test();
-}
-
-// Override list.json with test data from data/list.json
-// and check that different locale is working
-add_task(async function test_listJSONlocale() {
-  let url = "resource://test/data/";
-  let resProt = Services.io.getProtocolHandler("resource")
-                        .QueryInterface(Ci.nsIResProtocolHandler);
-  resProt.setSubstitution("search-plugins", Services.io.newURI(url));
-
-  Services.locale.setAvailableLocales(["de"]);
-  Services.locale.setRequestedLocales(["de"]);
-
-  await asyncInit();
-
-  Assert.ok(Services.search.isInitialized, "search initialized");
-
-  let sortedEngines = Services.search.getEngines();
-  Assert.equal(sortedEngines.length, 1, "Should have only one engine");
-});
-
-
-// Check that switching locale switches search engines
-add_task(async function test_listJSONlocaleSwitch() {
-  let promise = waitForSearchNotification("reinit-complete");
-
-  Services.locale.setAvailableLocales(["fr"]);
-  Services.locale.setRequestedLocales(["fr"]);
-
-  await promise;
-
-  Assert.ok(Services.search.isInitialized, "search initialized");
-
-  let sortedEngines = Services.search.getEngines();
-  Assert.equal(sortedEngines.length, 2, "Should have two engines");
-});
-
-// Check that region overrides apply
-add_task(async function test_listJSONRegionOverride() {
-  Services.prefs.setCharPref("browser.search.region", "RU");
-
-  await asyncReInit();
-
-  Assert.ok(Services.search.isInitialized, "search initialized");
-
-  let sortedEngines = Services.search.getEngines();
-  Assert.equal(sortedEngines.length, 2, "Should have two engines");
-  Assert.equal(sortedEngines[0].identifier, "engine-chromeicon", "Engine should have been overridden by engine-chromeicon");
-});
--- a/toolkit/components/search/tests/xpcshell/xpcshell.ini
+++ b/toolkit/components/search/tests/xpcshell/xpcshell.ini
@@ -35,17 +35,16 @@ support-files =
 [test_bug930456_child.js]
 [test_engine_set_alias.js]
 [test_hasEngineWithURL.js]
 [test_identifiers.js]
 [test_invalid_engine_from_dir.js]
 [test_init_async_multiple.js]
 [test_init_async_multiple_then_sync.js]
 [test_json_cache.js]
-[test_list_json_locale.js]
 [test_list_json_searchdefault.js]
 [test_list_json_searchorder.js]
 [test_location.js]
 [test_location_error.js]
 [test_location_malformed_json.js]
 [test_location_partner.js]
 [test_location_funnelcake.js]
 [test_location_sync.js]