public bool OnBeforePopup(IWebBrowser rpBrowserControl, IBlinkBrowser rpBrowser, IFrame rpFrame, string rpTargetUrl, string rpTargetFrameName, WindowOpenDisposition rpTargetDisposition, bool rpUserGesture, IPopupFeatures rpPopupFeatures, IWindowInfo rpWindowInfo, IBrowserSettings rpBrowserSettings, ref bool rrpNoJavascriptAccess, out IWebBrowser ropNewBrowser)
        {
            rpBrowserControl.Load(rpTargetUrl);

            ropNewBrowser = rpBrowserControl;
            return true;
        }
Example #2
0
 public bool OnSelectClientCertificate(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser, bool isProxy, string host, int port, X509Certificate2Collection certificates, ISelectClientCertificateCallback callback)
 {
     return(false);
 }
Example #3
0
 bool CefSharp.IContextMenuHandler.OnContextMenuCommand(CefSharp.IWebBrowser browserControl, CefSharp.IBrowser browser, CefSharp.IFrame frame, CefSharp.IContextMenuParams parameters, CefSharp.CefMenuCommand commandId, CefSharp.CefEventFlags eventFlags)
 {
     //throw new NotImplementedException();
     return(false);
 }
 public void OnBeforeClose(IWebBrowser rpBrowserControl, IBlinkBrowser rpBrowser) { }
 public bool DoClose(IWebBrowser rpBrowserControl, IBlinkBrowser rpBrowser) => false;
Example #6
0
 public bool GetAuthCredentials(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser, string originUrl, bool isProxy, string host, int port, string realm, string scheme, IAuthCallback callback)
 {
     return(true); // TODO: We got 2 old ones.. true AND false.. O.o
 }
Example #7
0
 public bool OnOpenUrlFromTab(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser, IFrame frame, string targetUrl, WindowOpenDisposition targetDisposition, bool userGesture)
 {
     return(false);
 }
Example #8
0
 public void OnRenderProcessTerminated(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser, CefTerminationStatus status)
 {
 }
Example #9
0
 public void OnBeforeClose(IWebBrowser browserControl, CefSharp.IBrowser browser)
 {
     //
 }
Example #10
0
 public bool DoClose(IWebBrowser browserControl, CefSharp.IBrowser browser)
 {
     return false;
 }
Example #11
0
 public void OnAfterCreated(IWebBrowser browserControl, CefSharp.IBrowser browser)
 {
     //
 }
Example #12
0
        public bool OnPreKeyEvent(IWebBrowser browserControl, CefSharp.IBrowser browser, KeyType type, int windowsKeyCode, int nativeKeyCode, CefEventFlags modifiers, bool isSystemKey, ref bool isKeyboardShortcut)
        {
            const int WM_SYSKEYDOWN = 0x104;
            const int WM_KEYDOWN = 0x100;
            const int WM_KEYUP = 0x101;
            const int WM_SYSKEYUP = 0x105;
            const int WM_CHAR = 0x102;
            const int WM_SYSCHAR = 0x106;
            const int VK_TAB = 0x9;

            bool result = false;

            isKeyboardShortcut = false;

            // Don't deal with TABs by default:
            // TODO: Are there any additional ones we need to be careful of?
            // i.e. Escape, Return, etc...?
            if (windowsKeyCode == VK_TAB) {
                return result;
            }

            Control control = browserControl as Control;
            int msgType = 0;
            switch (type) {
                case KeyType.RawKeyDown:
                    if (isSystemKey) {
                        msgType = WM_SYSKEYDOWN;
                    } else {
                        msgType = WM_KEYDOWN;
                    }
                    break;
                case KeyType.KeyUp:
                    if (isSystemKey) {
                        msgType = WM_SYSKEYUP;
                    } else {
                        msgType = WM_KEYUP;
                    }
                    break;
                case KeyType.Char:
                    if (isSystemKey) {
                        msgType = WM_SYSCHAR;
                    } else {
                        msgType = WM_CHAR;
                    }
                    break;
                default:
                    break;
            }
            // We have to adapt from CEF's UI thread message loop to our fronting WinForm control here.
            // So, we have to make some calls that Application.Run usually ends up handling for us:
            PreProcessControlState state = PreProcessControlState.MessageNotNeeded;
            // We can't use BeginInvoke here, because we need the results for the return value
            // and isKeyboardShortcut. In theory this shouldn't deadlock, because
            // atm this is the only synchronous operation between the two threads.
            control.Invoke(new Action(() => {
                Message msg = new Message() { HWnd = control.Handle, Msg = msgType, WParam = new IntPtr(windowsKeyCode), LParam = new IntPtr(nativeKeyCode) };

                // First comes Application.AddMessageFilter related processing:
                // 99.9% of the time in WinForms this doesn't do anything interesting.
                bool processed = Application.FilterMessage(ref msg);
                if (processed) {
                    state = PreProcessControlState.MessageProcessed;
                } else {
                    // Next we see if our control (or one of its parents)
                    // wants first crack at the message via several possible Control methods.
                    // This includes things like Mnemonics/Accelerators/Menu Shortcuts/etc...
                    state = control.PreProcessControlMessage(ref msg);
                }
            }));
            if (state == PreProcessControlState.MessageNeeded) {
                // TODO: Determine how to track MessageNeeded for OnKeyEvent.
                isKeyboardShortcut = true;
            } else if (state == PreProcessControlState.MessageProcessed) {
                // Most of the interesting cases get processed by PreProcessControlMessage.
                result = true;
            }
            return result;
        }
Example #13
0
 public bool OnKeyEvent(IWebBrowser browserControl, CefSharp.IBrowser browser, KeyType type, int windowsKeyCode, int nativeKeyCode, CefEventFlags modifiers, bool isSystemKey)
 {
     return false;
 }
Example #14
0
 bool CefSharp.IContextMenuHandler.RunContextMenu(CefSharp.IWebBrowser browserControl, CefSharp.IBrowser browser, CefSharp.IFrame frame, CefSharp.IContextMenuParams parameters, CefSharp.IMenuModel model, CefSharp.IRunContextMenuCallback callback)
 {
     return(false);
 }
Example #15
0
 void CefSharp.IContextMenuHandler.OnContextMenuDismissed(CefSharp.IWebBrowser browserControl, CefSharp.IBrowser browser, CefSharp.IFrame frame)
 {
     //throw new NotImplementedException();
 }
Example #16
0
 public void OnPluginCrashed(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser, string pluginPath)
 {
 }
Example #17
0
 public void OnRenderViewReady(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser)
 {
 }
Example #18
0
 public bool RunContextMenu(IWebBrowser browserControl, CefSharp.IBrowser browser, IFrame frame, IContextMenuParams parameters, IMenuModel model, IRunContextMenuCallback callback)
 {
     return false;
 }
Example #19
0
 public void OnDocumentAvailableInMainFrame(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser)
 {
 }
Example #20
0
 public override IResponseFilter GetResourceResponseFilter(IWebBrowser browserControl, CefSharp.IBrowser browser, IFrame frame, IRequest request, IResponse response)
 {
     // Can modify responses here
     return null;
 }
Example #21
0
 public IResourceRequestHandler GetResourceRequestHandler(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser, IFrame frame, IRequest request, bool isNavigation, bool isDownload, string requestInitiator, ref bool disableDefaultHandling)
 {
     return(null);
 }
Example #22
0
 public override CefReturnValue OnBeforeResourceLoad(IWebBrowser browserControl, CefSharp.IBrowser browser, IFrame frame, IRequest request, IRequestCallback callback)
 {
     // Cancel Requests to "rt.gsspat.jp" ("white Screen" workaround)
     if (request.Url.Contains("rt.gsspat.jp")) {
         return CefReturnValue.Cancel;
     } else {
         return CefReturnValue.Continue;
     }
 }
Example #23
0
 public bool OnQuotaRequest(IWebBrowser chromiumWebBrowser, CefSharp.IBrowser browser, string originUrl, long newSize, IRequestCallback callback)
 {
     return(false);
 }
 public void OnBeforeContextMenu(IWebBrowser browserControl, CefSharp.IBrowser browser, IFrame frame, IContextMenuParams parameters,
                                 IMenuModel model)
 {
     model.Clear();
 }
 public void OnAfterCreated(IWebBrowser rpBrowserControl, IBlinkBrowser rpBrowser) { }
 public bool OnContextMenuCommand(IWebBrowser browserControl, CefSharp.IBrowser browser, IFrame frame, IContextMenuParams parameters, CefMenuCommand commandId, CefEventFlags eventFlags)
 {
     return(false);
 }
 public void OnContextMenuDismissed(IWebBrowser browserControl, CefSharp.IBrowser browser, IFrame frame)
 {
 }
Example #28
0
 void CefSharp.IContextMenuHandler.OnBeforeContextMenu(CefSharp.IWebBrowser browserControl, CefSharp.IBrowser browser, CefSharp.IFrame frame, CefSharp.IContextMenuParams parameters, CefSharp.IMenuModel model)
 {
     model.Clear();
 }