2
我想添加一个新的搜索引擎,显示在firefox nav-bar中显示的搜索栏的下拉菜单中。当用户通过我的分机的偏好设置它时,将其设置为默认的searchEngine。使用SDK通过Firefox重启扩展添加新的搜索引擎
对于非无需重启的扩展,通过XUL,我们的组件,以做这样的事情:
Cc["@mozilla.org/browser/search-service;1"].getService(Ci.nsIBrowserSearchService).addEngineWithDetails(...); //Adds a new search engine
Cc["@mozilla.org/browser/search-service;1"].getService(Ci.nsIBrowserSearchService).currentEngine = ...; //sets the current search engine value.
我怎样才能做到在无需重启的扩展类似的东西,使用Firefox的插件 - SDK创建的?我看到的一个问题是没有稳定的API来获取并设置'about:config'中列出的Firefox偏好设置。但即使我使用了不稳定的首选项服务here,我也无法通过扩展来执行默认搜索引擎更改。请帮助!
我不认为你需要的部分网址吧了。我为搜索栏设置了提供者,并且url栏搜索到相同的地方。 也许这是最近的一次变化。 – Garrett 2013-11-05 21:08:03
是的,自Firefox 23开始,'keyword.URL'首选项没有效果。您只能通过SearchService调整默认提供者。更新答案... – 2013-11-28 01:36:00