Firefox Addon SDK jpm菜单项模块:图像未显示在Tools菜单栏上



可能与有关,但不同于

firefox插件图标未显示,firefox扩展插件未显示图标。

而这些问题围绕着API用户需要使用self.data.url('./icon-16.png')并将图像放在'中/data/'目录,我已经这样做了,所以它可能是API代码的菜单项模块中的一个bug(对我来说没问题),或者API iteself,或者其他一些误用(对我或其他人来说)或冲突。

我已经得到了要显示的菜单项文本标签,以及相关的onCommand处理程序。我已经使用ActionButton使用self.data.url()加载图标,所以我知道可以找到图标。这些相同的图像和功能在菜单项模块代码中失败。我尝试在菜单栏的"文件和工具"菜单下添加项目。我已经尝试修改菜单项模块的index.js文件。

在我的插件的index.js中,我尝试了各种选项:

// for reference, all shown at once, but tried individually
image: self.data.url( "./icon-16.png" ),
image: self.data.url( "icon-16.png" ),
image: "./icon-16.png",
image: "icon-16.png",

在菜单项的index.js中,我尝试过:

// using self.data.url in my index.js, despite example not showing this
menuitem.style.listStyleImage = "url('" + options.image + "')";
menuitem.setAttribute('image', options.image );

根据Mozilla的一些安全策略,菜单栏菜单项的图标是否只是被浏览器简单地禁止,而控制台中没有任何警告?是否有浏览器设置或替代?它还能和XUL Overlays一起使用吗?

我只是想直接使用各种代码示例中的菜单项插件(修改后删除了其他选项)。

require("menuitem").Menuitem({
    id: "clickme",
    //menuid: "menu_FilePopup",
    //insertbefore: "menu_FileQuitItem",
    menuid: "menu_ToolsPopup",
    insertbefore: "menu_pageInfo"
    label: "Click to visit Mozilla!",
    image: self.data.url( "./icon-16.png" ),
    onCommand: handleClick,
});

使用jpmrun-b(浏览器二进制文件的绝对路径)测试结果,每次都会创建一个新的默认空概要文件。

菜单项模块在其他上下文中正常工作。显然,除了书签(可能)之外,菜单栏菜单项上不允许有图标。

最新更新