2018-09-10 02:41:13 +02:00
|
|
|
// Copyright © 2014 The CefSharp Authors. All rights reserved.
|
2014-06-25 12:00:58 +10:00
|
|
|
//
|
|
|
|
|
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
|
|
|
|
|
|
2015-08-03 17:57:01 +10:00
|
|
|
namespace CefSharp.WinForms.Example.Handlers
|
2014-01-13 09:21:11 +02:00
|
|
|
{
|
2015-08-17 13:42:03 +10:00
|
|
|
internal class MenuHandler : IContextMenuHandler
|
2014-01-13 09:21:11 +02:00
|
|
|
{
|
2015-08-31 11:36:49 +10:00
|
|
|
private const int ShowDevTools = 26501;
|
|
|
|
|
private const int CloseDevTools = 26502;
|
|
|
|
|
|
2019-07-20 16:26:25 +10:00
|
|
|
void IContextMenuHandler.OnBeforeContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model)
|
2014-01-13 09:21:11 +02:00
|
|
|
{
|
2015-08-17 13:33:27 +10:00
|
|
|
//To disable the menu then call clear
|
|
|
|
|
// model.Clear();
|
2015-08-25 03:28:30 +03:00
|
|
|
|
2015-08-25 04:32:54 +03:00
|
|
|
//Removing existing menu item
|
2015-08-31 11:36:49 +10:00
|
|
|
//bool removed = model.Remove(CefMenuCommand.ViewSource); // Remove "View Source" option
|
2015-08-25 04:32:54 +03:00
|
|
|
|
2015-08-31 11:36:49 +10:00
|
|
|
//Add new custom menu items
|
|
|
|
|
model.AddItem((CefMenuCommand)ShowDevTools, "Show DevTools");
|
|
|
|
|
model.AddItem((CefMenuCommand)CloseDevTools, "Close DevTools");
|
2015-08-17 13:33:27 +10:00
|
|
|
}
|
|
|
|
|
|
2019-07-20 16:26:25 +10:00
|
|
|
bool IContextMenuHandler.OnContextMenuCommand(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags)
|
2015-08-17 13:33:27 +10:00
|
|
|
{
|
2015-08-31 11:36:49 +10:00
|
|
|
if ((int)commandId == ShowDevTools)
|
|
|
|
|
{
|
|
|
|
|
browser.ShowDevTools();
|
|
|
|
|
}
|
|
|
|
|
if ((int)commandId == CloseDevTools)
|
2015-08-25 04:32:54 +03:00
|
|
|
{
|
2015-08-31 11:36:49 +10:00
|
|
|
browser.CloseDevTools();
|
2015-08-25 04:32:54 +03:00
|
|
|
}
|
2015-08-17 13:33:27 +10:00
|
|
|
return false;
|
|
|
|
|
}
|
|
|
|
|
|
2019-07-20 16:26:25 +10:00
|
|
|
void IContextMenuHandler.OnContextMenuDismissed(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame)
|
2015-08-17 13:33:27 +10:00
|
|
|
{
|
2015-08-25 04:32:54 +03:00
|
|
|
|
2014-01-13 09:21:11 +02:00
|
|
|
}
|
2015-10-12 08:03:50 +10:00
|
|
|
|
2019-07-20 16:26:25 +10:00
|
|
|
bool IContextMenuHandler.RunContextMenu(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback)
|
2015-10-12 08:03:50 +10:00
|
|
|
{
|
|
|
|
|
return false;
|
|
|
|
|
}
|
2014-01-13 09:21:11 +02:00
|
|
|
}
|
2019-07-20 16:26:25 +10:00
|
|
|
}
|