2

我正在尝试使用基于 Javascript 的绑定来构建自己的 Gnome-Shell-Extension,它只是嵌入了一个 webkitview。

但是以下 3 行让 gnome-shell 完全崩溃(顶部面板消失,需要重新登录才能重新启动)。因此无法查看“错误”标签来找出问题所在。

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

有什么办法可以获取一些信息是怎么回事?

4

1 回答 1

3

您不能在 gnome-shell 或任何其他 GTK 小部件中嵌入 WebKitGtk WebView,包括 GtkClutterEmbed;这实际上是 GTK 的一个限制。

如果您想嵌入 WebKitGtk WebView 一个选项是使用单独的进程,获取 GtkWindow 的 XID 并使用 ClutterX11TexturePixmap 演员在扩展中显示它。您还必须将事件从 Clutter 演员传递到您的应用程序。您可以使用某种形式的 IPC,例如 D-Bus,来传递 XID 和事件。

于 2011-11-23T14:04:28.487 回答