2016-11-03 63 views
2

当我尝试的菜单项添加到网页视图与此代码:如何将菜单项添加到WebKitContextMenu(javascript,gjs)?

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; 
    })); 

应用程序退出与错误“分割故障(核心转储)” 什么是正确的方式来一个菜单项添加到的上下文菜单一个WebView?

回答

2

小的修正:

var m_item = WebKit.ContextMenuItem.new(action); 

这是混乱的,至少可以说,这是因为WebKit.ContextMenuItem有一个自定义的构造函数,而不是通常的GObject的构造函数,将与new WebKit.ContextMenuItem被调用。分段错误是由于WebKit在上下文菜单项未收到操作时窒息;不过,如果GJS至少警告过你这里发生了什么,那将是一件好事。

我已经为GJS here打开了一个错误报告。