如何控制webkit上下文菜单中的项目?

时间:2015-12-11 19:58:11

标签: objective-c cocoa webkit

我正在开发一个用于公开发布的webkit应用程序,并想知道如何处理上下文菜单。

问题是Safari的默认上下文菜单中有些项目我不想向最终用户显示:

  • 刷新
  • 检查元素

可能是其他人。所以,问题#1是:是否可以从默认上下文菜单中有选择地删除项目?

另一种选择是从头开始创建我自己的上下文菜单,但随后出现了许多其他问题:

  • 我失去了默认功能,例如textarea上的拼写检查或辅助功能。
  • 我失去了OSX系统范围的上下文菜单处理行为,因此它将是一种较少原生的UI行为。我想为此我可以在本机主机应用程序中实现菜单。

所以主要的问题是,我应该怎样做才能保留Safari上下文菜单中的默认功能,同时限制某些内容,如“重新加载”,“检查元素”?

1 个答案:

答案 0 :(得分:1)

你不能使用WebUIDelegate协议方法吗?

import {someFunc2} from '../some/path/to/utils';

您应该能够获取defaultItems,将要保留的那些添加到新数组中,然后返回所述数组?