从附加工具包修改Firefox下载对话框的内容

从附加工具包修改Firefox下载对话框的内容,firefox,firefox-addon,firefox-addon-sdk,Firefox,Firefox Addon,Firefox Addon Sdk,我希望能够在Firefox启动文件下载时弹出的下载对话框中添加一个选项。是否可以使用新的附加SDK执行此操作,还是必须使用旧方法执行此操作 编辑:显然,如果选择了新选项,我需要一种了解它并基于它执行代码的方法。这是您可以使用的。我猜您正在谈论的对话框是chrome://mozapps/content/downloads/downloads.xul-下载管理器。AFAIK使用附加SDK不可能做到这一点,它只提供最常见的UI集成点。您可以创建一个传统的扩展,但是,它可以覆盖任何对话框。据我所知,没有

我希望能够在Firefox启动文件下载时弹出的下载对话框中添加一个选项。是否可以使用新的附加SDK执行此操作,还是必须使用旧方法执行此操作


编辑:显然,如果选择了新选项,我需要一种了解它并基于它执行代码的方法。

这是您可以使用的。我猜您正在谈论的对话框是
chrome://mozapps/content/downloads/downloads.xul
-下载管理器。AFAIK使用附加SDK不可能做到这一点,它只提供最常见的UI集成点。您可以创建一个传统的扩展,但是,它可以覆盖任何对话框。

据我所知,没有现有的模块可以帮助您,因此您必须创建一个,或者等待其他人创建一个。但扩展浏览器UI的主要思想很简单,如下所示:

  • 加载加载项后,扫描要扩展的类型的打开窗口
  • 通过向页面添加xul元素和javascript来扩展打开的窗口
  • 侦听新打开的窗口,并测试它们是否是打开后要查找的类型
  • 在插件处于活动状态时扩展新打开的窗口
  • 当windows关闭或您的加载项被禁用/卸载时,请自行清理
  • 最后一步是最重要的一步,对于没有重新启动的旧式学校扩建来说,这一步永远不重要

    您可以查看的一些内置模块是小部件模块、上下文菜单模块和热键模块


    我自己也做了一些,包括工具栏按钮模块、xulkeys模块、menuitems模块和其他一些模块。

    最近我写了一个扩展来做同样的事情。引导扩展,不使用插件sdk

    我已经在AMO上提交了,但等待审查

    和源代码


    不,我指的不是下载管理器-我指的是提示“打开…”/“保存在…”的那一个,但我想这没什么区别。每次显示对话框时,是否可以监听某个事件并注入内容?@CAFxX:Ok,那就是
    chrome://mozapps/content/downloads/unknownContentType.xul
    然后。手动注入内容会浪费时间,如果在chrome清单中指定,覆盖将自动应用。是的,但在使用附加sdk时,内容注入也可以工作,对吗?@CAFxX:No,sdk仅将代码注入内容页。这并不意味着要以复杂的方式扩展浏览器UI,只提供了一系列可能的场景。实际上,您可以使用插件sdk扩展浏览器UI,如果您已经知道了旧的方式,这并不太难。插件sdk的好处是,一旦有人做了某件事,他们就会拥有其他人可以重用的模块。