1

我的目标是在用户按下 Gnome 顶部栏中的按钮时启动一个新的 GtkApplication。顶部栏中的按钮可以通过 gnome-shell-extension 完成,但我很难打开 GtkApplication。

因此,现在下面的代码应该只是启动 GtkApplication。

将代码放入其中后启用此扩展~/.local/share/gnome-shell/extensions/test@test/extension.js总是会SIGSEGV产生gnome-shell.

const Lang = imports.lang;
const Gtk = imports.gi.Gtk;
const TestApp = new Lang.Class({
    Name: 'TestApp',
    Extends: Gtk.Application,
    _init: function() {
        this.parent({ application_id: 'testapp.apptesttt' });
    },
    vfunc_activate: function() {
        //this.window.present();
    },
});
function init() {
}
let _app;
function enable() {
    _app = new TestApp();
    _app.register(null);
}
function disable() {
    _app.quit();
}
4

1 回答 1

1

我参加聚会可能有点晚了,但万一其他人在这里结束:

答案很可能在于imports.misc.util

const Util = imports.misc.util;
Util.spawn()
于 2016-09-22T08:09:40.973 回答