Постоянная регистрация в разработке Gnome-Shell-Extension?

Я пытаюсь использовать привязки на основе Javascript для создания собственного расширения Gnome-Shell-Extension, которое просто встраивает webkitview.

Но следующие 3 строки позволяют полностью сломать gnome-shell (верхняя панель исчезает, нужно повторно войти в систему, чтобы запустить ее снова). поэтому нет возможности заглянуть на вкладку «Ошибки» LookingGlass, чтобы выяснить, что было не так.

WebKit = imports.gi.WebKit;
GtkClutter = imports.gi.GtkClutter;
Main.panel._rightBox.add(new GtkClutter.Actor({contents: new WebKit.WebView()}));

Есть ли способ получить информацию о том, что происходит?


person kraiz    schedule 22.11.2011    source источник


Ответы (1)


вы не можете встроить WebKitGtk WebView внутрь gnome-shell или любого другого виджета GTK, включая GtkClutterEmbed; на самом деле это ограничение GTK.

если вы хотите внедрить WebKitGtk WebView, одним из вариантов является использование отдельного процесса, получение XID GtkWindow и использование актера ClutterX11TexturePixmap для его отображения внутри расширения. вам также придется передавать события от актера Clutter в ваше приложение. вы можете использовать некоторую форму IPC, например D-Bus, для передачи XID и событий.

person ebassi    schedule 23.11.2011