WebView.addOnContextMenu

Emitted when a context menu is about to be displayed to give the application a chance to customize the proposed menu, prevent the menu from being displayed, or build its own context menu. <itemizedlist> <listitem><para> To customize the proposed menu you can use webkit_context_menu_prepend(), webkit_context_menu_append() or webkit_context_menu_insert() to add new #WebKitContextMenuItem<!-- -->s to @context_menu, webkit_context_menu_move_item() to reorder existing items, or webkit_context_menu_remove() to remove an existing item. The signal handler should return %FALSE, and the menu represented by @context_menu will be shown. </para></listitem> <listitem><para> To prevent the menu from being displayed you can just connect to this signal and return %TRUE so that the proposed menu will not be shown. </para></listitem> <listitem><para> To build your own menu, you can remove all items from the proposed menu with webkit_context_menu_remove_all(), add your own items and return %FALSE so that the menu will be shown. You can also ignore the proposed #WebKitContextMenu, build your own #GtkMenu and return %TRUE to prevent the proposed menu from being shown. </para></listitem> <listitem><para> If you just want the default menu to be shown always, simply don't connect to this signal because showing the proposed context menu is the default behaviour. </para></listitem> </itemizedlist>

The @event is expected to be one of the following types: <itemizedlist> <listitem><para> a #GdkEventButton of type %GDK_BUTTON_PRESS when the context menu was triggered with mouse. </para></listitem> <listitem><para> a #GdkEventKey of type %GDK_KEY_PRESS if the keyboard was used to show the menu. </para></listitem> <listitem><para> a generic #GdkEvent of type %GDK_NOTHING when the #GtkWidget::popup-menu signal was used to show the context menu. </para></listitem> </itemizedlist>

If the signal handler returns %FALSE the context menu represented by @context_menu will be shown, if it return %TRUE the context menu will not be shown.

The proposed #WebKitContextMenu passed in @context_menu argument is only valid during the signal emission.

class WebView
gulong
addOnContextMenu
(
bool delegate dlg
,
ConnectFlags connectFlags = cast(ConnectFlags)0
)

Return Value

Type: gulong

%TRUE to stop other handlers from being invoked for the event. %FALSE to propagate the event further.

Meta