From 9b86b92a65a358bcff7234894127cb9557739187 Mon Sep 17 00:00:00 2001 From: Faryan Rezagholi Date: Tue, 26 May 2020 10:37:56 +0200 Subject: [PATCH] added request ahnbdler for cefsharp --- ...Connection.Protocol.HTTP.RequestHandler.cs | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 mRemoteV1/Connection/Protocol/Http/Connection.Protocol.HTTP.RequestHandler.cs diff --git a/mRemoteV1/Connection/Protocol/Http/Connection.Protocol.HTTP.RequestHandler.cs b/mRemoteV1/Connection/Protocol/Http/Connection.Protocol.HTTP.RequestHandler.cs new file mode 100644 index 000000000..34379a119 --- /dev/null +++ b/mRemoteV1/Connection/Protocol/Http/Connection.Protocol.HTTP.RequestHandler.cs @@ -0,0 +1,64 @@ +using CefSharp; +using System.Diagnostics; +using System.Security.Cryptography.X509Certificates; + +namespace mRemoteNG.Connection.Protocol.Http +{ + partial class RequestHandler : IRequestHandler + { + public bool GetAuthCredentials(IWebBrowser chromiumWebBrowser, IBrowser browser, string originUrl, bool isProxy, string host, int port, string realm, string scheme, IAuthCallback callback) + { + return false; + } + + public IResourceRequestHandler GetResourceRequestHandler(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool isNavigation, bool isDownload, string requestInitiator, ref bool disableDefaultHandling) + { + return null; + } + + public bool OnBeforeBrowse(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, IRequest request, bool userGesture, bool isRedirect) + { + if (request.Url.StartsWith(Cef.CefCommitHash)) + { + return false; + } + else + { + Process.Start(request.Url); + return true; + } + } + + public bool OnCertificateError(IWebBrowser chromiumWebBrowser, IBrowser browser, CefErrorCode errorCode, string requestUrl, ISslInfo sslInfo, IRequestCallback callback) + { + return false; + } + + public bool OnOpenUrlFromTab(IWebBrowser chromiumWebBrowser, IBrowser browser, IFrame frame, string targetUrl, WindowOpenDisposition targetDisposition, bool userGesture) + { + return false; + } + + public void OnPluginCrashed(IWebBrowser chromiumWebBrowser, IBrowser browser, string pluginPath) + { + } + + public bool OnQuotaRequest(IWebBrowser chromiumWebBrowser, IBrowser browser, string originUrl, long newSize, IRequestCallback callback) + { + return true; + } + + public void OnRenderProcessTerminated(IWebBrowser chromiumWebBrowser, IBrowser browser, CefTerminationStatus status) + { + } + + public void OnRenderViewReady(IWebBrowser chromiumWebBrowser, IBrowser browser) + { + } + + public bool OnSelectClientCertificate(IWebBrowser chromiumWebBrowser, IBrowser browser, bool isProxy, string host, int port, X509Certificate2Collection certificates, ISelectClientCertificateCallback callback) + { + return true; + } + } +} \ No newline at end of file