Package org.webkitgtk
Interface WebView.ContextMenuCallback
- All Superinterfaces:
FunctionPointer
- Enclosing class:
WebView
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
Functional interface declaration of the
ContextMenuCallback callback.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionbooleanrun(@Nullable ContextMenu contextMenu, @Nullable HitTestResult hitTestResult) 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.default MemorySegmenttoCallback(Arena arena) Creates a native function pointer to theupcall(java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment)method.default intupcall(MemorySegment sourceWebView, MemorySegment contextMenu, MemorySegment hitTestResult) Theupcallmethod is called from native code.
-
Method Details
-
run
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 newWebKitContextMenuItem<!-- -->s tocontextMenu,webkit_context_menu_move_item() to reorder existing items, or webkit_context_menu_remove() to remove an existing item. The signal handler should returnfalse, and the menu represented bycontextMenuwill be shown. </para></listitem> <listitem><para> To prevent the menu from being displayed you can just connect to this signal and returntrueso 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 returnfalseso that the menu will be shown. You can also ignore the proposedWebKitContextMenu, build your ownGtkMenuand returntrueto 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>If the signal handler returns
falsethe context menu represented bycontextMenuwill be shown, if it returntruethe context menu will not be shown.The proposed
WebKitContextMenupassed incontextMenuargument is only valid during the signal emission. -
upcall
default int upcall(MemorySegment sourceWebView, MemorySegment contextMenu, MemorySegment hitTestResult) Theupcallmethod is called from native code. The parameters are marshaled andrun(org.webkitgtk.ContextMenu, org.webkitgtk.HitTestResult)is executed. -
toCallback
Creates a native function pointer to theupcall(java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment, java.lang.foreign.MemorySegment)method.- Specified by:
toCallbackin interfaceFunctionPointer- Parameters:
arena- the arena in which the function pointer is allocated- Returns:
- the native function pointer
-