/// <summary>
 /// Called to allow custom display of the context menu. |params| provides
 /// information about the context menu state. |model| contains the context menu
 /// model resulting from OnBeforeContextMenu. For custom display return true
 /// and execute |callback| either synchronously or asynchronously with the
 /// selected command ID. For default display return false. Do not keep
 /// references to |params| or |model| outside of this callback.
 /// </summary>
 protected virtual bool RunContextMenu(CefBrowser browser, CefFrame frame, CefContextMenuParams parameters, CefMenuModel model, CefRunContextMenuCallback callback)
 {
     return(false);
 }
 /// <summary>
 /// Called to execute a command selected from the context menu. Return true if
 /// the command was handled or false for the default implementation. See
 /// cef_menu_id_t for the command ids that have default implementations. All
 /// user-defined command ids should be between MENU_ID_USER_FIRST and
 /// MENU_ID_USER_LAST. |params| will have the same values as what was passed to
 /// OnBeforeContextMenu(). Do not keep a reference to |params| outside of this
 /// callback.
 /// </summary>
 protected virtual bool OnContextMenuCommand(CefBrowser browser, CefFrame frame, CefContextMenuParams state, int commandId, CefEventFlags eventFlags)
 {
     return(false);
 }
 /// <summary>
 /// Called before a context menu is displayed. |params| provides information
 /// about the context menu state. |model| initially contains the default
 /// context menu. The |model| can be cleared to show no context menu or
 /// modified to show a custom menu. Do not keep references to |params| or
 /// |model| outside of this callback.
 /// </summary>
 protected virtual void OnBeforeContextMenu(CefBrowser browser, CefFrame frame, CefContextMenuParams state, CefMenuModel model)
 {
 }