gnome-shell 3.4 和 3.6 的写入扩展



我正在为gnome-shell编写一个扩展。但是在 gnome-shell 3.4 中,菜单添加了 panel._menus,在 gnome-shell3.6 中使用 panel.menuManager .如何添加适用于每个版本的菜单?

有几种方法可以做到这一点。

您可以检查是否存在panel._menus并使用它(如果存在),否则请使用panel.menuManager

let menuManager = panel._menus || panel.menuManager
// now do everything with menuManager

或者你可以明确检查 gnome-shell 版本:

const ShellVersion = imports.misc.config.PACKAGE_VERSION.split(".").map(
   function (x) { return +x; }) // <-- converts from string to number
// this is now an array, e.g. if I am on gnome-shell 3.6.2 it is [3, 6, 2].
if (ShellVersion[1] === 4) {
    // GNOME 3.4, use panel._menus
} else if (ShellVersion[1] === 6) {
    // GNOME 3.6, use panel.menuManager
}

相关内容

  • 没有找到相关文章

最新更新