当我尝试使用以下代码将菜单项添加到webview时:
my_webview.connect('context-menu', Lang.bind(this, function(webview, c_menu, event, hit_test){
var action = new Gtk.Action({name:"some_name", label:"Some Label"});
action.connect('activate', Lang.bind(this, function(){
print("Your Menu Item !");
}))
var m_item = new WebKit.ContextMenuItem(action);
c_menu.append(m_item);
m_item.show();
return false;
}));
app退出时出现错误" Segmentation fault(core dumped)" 将menuitem添加到WebView的上下文菜单中的正确方法是什么?
答案 0 :(得分:2)
小修正:
var m_item = WebKit.ContextMenuItem.new(action);
至少可以说这是令人困惑的,因为WebKit.ContextMenuItem
有一个自定义构造函数,而不是通常用new WebKit.ContextMenuItem
调用的GObject构造函数。分段错误是由于WebKit在其上下文菜单项没有收到动作时窒息;但是,如果GJS至少警告过你在这里发生了什么,那就好了。
我已经为GJS here打开了一个错误报告。