public static void RemoveBrowser(ICefWebBrowser b) { if (Browsers.Contains(b)) { Browsers.Remove(b); } }
protected virtual IApplicationWindowEx CreateWindow(ICefWebBrowser browser, string startUrl, CreateWindowOptions options) { var window = CreateNewApplicationWindow(); window.Initialize(this, browser, startUrl, Application.Package.Manifest.Name, options); AddWindow(window); return(window); }
public void HandleBeforeResourceLoad(ICefWebBrowser browserControl, IRequestResponse requestResponse) { IRequest request = requestResponse.Request; if (request.Url.StartsWith(testPagesBaseUrl)) { var url = request.Url.Substring(testPagesBaseUrl.Length); var stream = GetStream(url); requestResponse.RespondWith(stream, "text/html"); } }
public void HandleBeforeResourceLoad(ICefWebBrowser browserControl, IRequestResponse requestResponse) { IRequest request = requestResponse.Request; if(request.Url.StartsWith("http://test/resource/load")) { Stream resourceStream = new MemoryStream(Encoding.UTF8.GetBytes( "<html><body><h1>Success</h1><p>This document is loaded from a System.IO.Stream</p></body></html>")); requestResponse.RespondWith(resourceStream, "text/html"); } }
private ICefWebBrowser GetRootBrowser() { if (_rootBrowser == null) { _rootBrowser = _getRootBrowser(); if (_rootBrowser != null) { _rootBrowser.BeforePopup += OnRootBrowserBeforePopup; _rootBrowser.ShowPopup += OnRootBrowserShowPopup; } } return(_rootBrowser); }
private void CloseApplication() { if (_eventPageBrowser != null) { _eventPageBrowser.Dispose(); _eventPageBrowser = null; } if (State != ApplicationState.Closed) { State = ApplicationState.Closed; Dispose(true); } }
protected virtual void Dispose(bool disposing) { if (!disposing) { return; } if (_windowManager != null) { _windowManager.NoWindowsOpen -= OnWindowManagerNoWindowsOpen; _windowManager.CreatingWindow -= OnWindowManagerCreatingWindow; _windowManager.CreatedWindow -= OnWindowManagerCreatedWindow; _windowManager = null; } _schemeHandler = null; if (_eventPageLaunchTimer != null) { _eventPageLaunchTimer.Dispose(); _eventPageLaunchTimer = null; } if (_router != null) { _router.Dispose(); _router = null; } if (_eventPageBrowser != null) { _eventPageBrowser.Dispose(); _eventPageBrowser = null; } if (_appRegistrationToken != null) { _appRegistrationToken.Dispose(); _appRegistrationToken = null; } if (_setCookieEvent != null) { _setCookieEvent.Close(); _setCookieEvent = null; } if (_eventPageUnloadTimer != null) { _eventPageUnloadTimer.Dispose(); _eventPageUnloadTimer = null; } }
private void LoadEventPage() { if (_eventPageBrowser != null) { return; } _eventPageBrowser = _createNewBrowser(); _eventPageBrowser.BeforeBrowserCreate += OnBeforeEventPageBrowserCreate; _eventPageBrowser.LoadEnd += OnEventPageBrowserLoad; _eventPageBrowser.RenderProcessTerminated += OnRenderProcessTerminated; using (AutoStopwatch.TimeIt("Creating browser control")) { _eventPageBrowser.CreateControl(); } }
public void Shutdown() { lock (_lock) { _getRootBrowser = null; _pendingWindowCreations.Clear(); foreach (var applicationWindow in _windows) { // TODO: Detach events applicationWindow.CloseWindow(); } _windows.Clear(); } if (_rootBrowser != null) { _rootBrowser.BeforePopup -= OnRootBrowserBeforePopup; _rootBrowser.ShowPopup -= OnRootBrowserShowPopup; _rootBrowser = null; } Logger.Debug("Shutdown"); }
public static void AddBrowser(ICefWebBrowser b) { Browsers.Add(b); Logger.Info("There are currently {0} browsers open.", Browsers.Count); }
public ShowPopupEventArgs(ICefWebBrowser browser) { PopupBrowser = browser; Shown = false; }