AcManager.Controls.UserControls.MenuHandler.RunContextMenu C# (CSharp) Method

RunContextMenu() public method

public RunContextMenu ( IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback ) : bool
browserControl IWebBrowser
browser IBrowser
frame IFrame
parameters IContextMenuParams
model IMenuModel
callback IRunContextMenuCallback
return bool
        public bool RunContextMenu(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model,
                IRunContextMenuCallback callback) {
            callback.Dispose();

            Application.Current.Dispatcher.Invoke(() => {
                var menu = new ContextMenu {
                    Items = {
                        new MenuItem {
                            Header = "Back",
                            Command = new DelegateCommand(browser.GoBack, () => browser.CanGoBack)
                        },
                        new MenuItem {
                            Header = "Forward",
                            Command = new DelegateCommand(browser.GoForward, () => browser.CanGoForward)
                        },
                        new MenuItem {
                            Header = "Refresh",
                            Command = new DelegateCommand(() => browser.Reload(true))
                        },
                        new Separator(),
                        new MenuItem {
                            Header = "Select All",
                            Command = new DelegateCommand(() => browser.FocusedFrame.SelectAll())
                        },
                        new MenuItem {
                            Header = "Open Page In Default Browser",
                            Command = new DelegateCommand<string>(WindowsHelper.ViewInBrowser),
                            CommandParameter = frame.Url
                        },
                    }
                };

                menu.IsOpen = true;
            });
            
            return true;
        }
    }