Моя цель - запустить новую функцию GtkApplication, когда пользователь нажимает кнопку в верхней панели Gnome. Кнопка в верхней панели может быть выполнена с помощью расширения gnome-shell, но мне трудно открыть GtkApplication.Как запустить GtkApplication изнутри расширения gnome-shell?
Поэтому на данный момент следующий код должен только начинать GtkApplication.
Включение этого расширения после помещения кода внутри ~/.local/share/gnome-shell/extensions/[email protected]/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();
}
Вместо запуска 'GtkApplication ', вы считали, что просто запускаете приложение в другом процессе? – meskobalazs
@meskobalazs Вы имеете в виду, если хотите отменить другой процесс? Как мне это сделать в javascript? – JayStrictor
Если бы я точно знал, я бы написал ответ :) Но у GLib и GIO есть API для этого. – meskobalazs