Mon but est de démarrer une nouvelle application GtkApplication lorsque l'utilisateur appuie sur un bouton dans la barre supérieure de Gnome. Le bouton dans la barre supérieure peut être fait par une extension gnome-shell, mais j'ai du mal à ouvrir GtkApplication.Comment démarrer une GtkApplication depuis l'intérieur d'une extension gnome-shell?
Par conséquent, pour l'instant, le code suivant doit simplement démarrer l'application GtkApplication.
Activer cette extension après avoir placé le code à ~/.local/share/gnome-shell/extensions/[email protected]/extension.js
entraîne toujours un signal SIGSEGV
de 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();
}
Au lieu de courir un 'GtkApplication ', avez-vous envisagé simplement de lancer l'application dans un processus différent? – meskobalazs
@meskobalazs Vous voulez dire en supprimant un autre processus? Comment ferais-je cela en javascript? – JayStrictor
Si je savais exactement, j'aurais écrit une réponse :) Mais GLib et GIO ont une API pour cela. – meskobalazs