/// <inheritdoc/> public bool OnKeyEvent(IWebBrowser browserControl, IBrowser browser, KeyType type, int windowsKeyCode, int nativeKeyCode, CefEventFlags modifiers, bool isSystemKey) { if (type == KeyType.RawKeyDown) { // check if my hotkey int mod = ((int)modifiers); bool ctrlDown = mod.IsBitmaskOn((int)CefEventFlags.ControlDown); bool shiftDown = mod.IsBitmaskOn((int)CefEventFlags.ShiftDown); bool altDown = mod.IsBitmaskOn((int)CefEventFlags.AltDown); // per registered hotkey foreach (SharpHotKey key in Hotkeys) { if (key.KeyCode == windowsKeyCode) { if (key.Ctrl == ctrlDown && key.Shift == shiftDown && key.Alt == altDown) { myForm.InvokeOnParent(delegate() { key.Callback(); }); } } } //Debug.WriteLine(String.Format("OnKeyEvent: KeyType: {0} 0x{1:X} Modifiers: {2}", type, windowsKeyCode, modifiers)); } return(false); }
public bool OnContextMenuCommand(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags) { int id = (int)commandId; if (id == ShowDevTools) { browser.ShowDevTools(); } if (id == CloseDevTools) { browser.CloseDevTools(); } if (id == SaveImageAs) { browser.GetHost().StartDownload(parameters.SourceUrl); } if (id == SaveLinkAs) { browser.GetHost().StartDownload(parameters.LinkUrl); } if (id == OpenLinkInNewTab) { ChromiumWebBrowser newBrowser = myForm.AddNewBrowserTab(parameters.LinkUrl, false, browser.MainFrame.Url); } if (id == CopyLinkAddress) { Clipboard.SetText(parameters.LinkUrl); } if (id == CloseTab) { myForm.InvokeOnParent(delegate() { myForm.CloseActiveTab(); }); } if (id == RefreshTab) { myForm.InvokeOnParent(delegate() { myForm.RefreshActiveTab(); }); } return(false); }
public bool OnContextMenuCommand(IWebBrowser browserControl, IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags) { int id = (int)commandId; if (id == ShowDevTools) { browser.ShowDevTools(); } if (id == CloseDevTools) { browser.CloseDevTools(); } if (id == SaveImageAs) { browser.GetHost().StartDownload(parameters.SourceUrl); } if (id == SaveLinkAs) { browser.GetHost().StartDownload(parameters.LinkUrl); } if (id == OpenLinkInNewTab) { ChromiumWebBrowser newBrowser = myForm.AddNewBrowserTab(parameters.LinkUrl, false, browser.MainFrame.Url); } if (id == CopyLinkAddress) { Clipboard.SetText(parameters.LinkUrl); } if (id == CloseTab) { myForm.InvokeOnParent(delegate() { myForm.CloseActiveTab(); }); } if (id == RefreshTab) { myForm.InvokeOnParent(delegate() { myForm.RefreshActiveTab(); }); } if (id == SaveAsPdf) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "PDF Files | *.pdf"; if (sfd.ShowDialog() == DialogResult.OK) { //string path = Path.GetFileName(sfd.FileName); browser.PrintToPdfAsync(sfd.FileName, new PdfPrintSettings() { SelectionOnly = false, BackgroundsEnabled = true }); } } if (id == Print) { browser.Print(); } return(false); }