private void ScanSource_Tick(object sender, EventArgs e) { // if found version matching current client version, disposes browser reference if (sourceScraped.Contains(completeversionnumber)) { this.Invoke((Action) delegate { updateCheck.Visible = true; updater.Dispose(); }); } // detects a blank page; could be a connection error or no Internet connection on the advice else if (sourceScraped == "<html><head></head><body></body></html>") // cefsharp chromium processes a blank webpage with the basic tags: html,head, and body with no content within them. { this.Invoke((Action) delegate { MessageBox.Show("Error: Failed to fetch version from Slink Soft! Either you have no Internet connection or the website (Wix servers) are down! Please try again later.", "ERROR!"); updater.Dispose(); }); } // if the current cliesnt version is not found on Slink Soft, prompts user to update else { this.Invoke((Action) delegate { MessageBox.Show("There is an update for Slink Soft's Google Drive Client! Go to https://realslinksoft.wixsite.com/slink-soft-portfolio/project-releases and download it. " + "Please note that you will not have to take any action with the file containing your account(s) information (it will be compatiable" + " in the update).", "Update Available!"); updater.Dispose(); }); } scanSource.Dispose(); }
public void Back() { this.OpenKeyboard = false; try { if (_buyWifiBrowser.CanGoBack) { _buyWifiBrowser.Back(); } else { try { if (_buyWifiBrowser != null) { _buyWifiBrowser.Dispose(); } } catch { } try { this.log.Info("Invoking Action: ViewEndNavigateSession after " + (30 - this.TimeElapsed).ToString() + " minutes."); this.sender.SendAction("ViewEndNavigateSession after " + (30 - this.TimeElapsed).ToString() + " minutes."); } catch { } this.events.PublishOnCurrentThread(new ViewTwoButtonsShellGrCommand()); } } catch { } }
public new void Dispose() { if (!browser.IsDisposed) { browser.Dispose(); } base.Dispose(); }
/* * When you do click on the player menu item */ private void PlayerMenu_Click(object sender, EventArgs e) { // Clear complete panel panel1.Controls.Clear(); chromeBrowser.Dispose(); songDetection = false; // Check if is a timer running if (detectionTimer != null) { detectionTimer.Stop(); } // Open normal player OpenPlayer(); }
protected override Task StartBrowser() { try { var cookieManager = Cef.GetGlobalCookieManager(); // Create the offscreen Chromium browser. var cookies = RequestSSOCookie().GetCookies(new Uri(Url)); foreach (System.Net.Cookie cook in cookies) { cookieManager.SetCookieAsync(Url + "reports/DealReport.shtml?", ConvertCookie(cook)); } var browser = new ChromiumWebBrowser(Url + "reports/DealReport.shtml?") { DownloadHandler = new DownloadHandler(this) }; browser.LoadingStateChanged += AnalyzePage; _pageAnalyzeFinished.WaitOne(); browser.Dispose(); } catch (Exception ex) { Logger.Error(ex, "WebMonitor Failed"); throw; } return(Task.FromResult <object>(null)); }
protected override void OnDestroy(ref Packet packet) { m_browser.Dispose(); CefSharpGlobal.Cef.Shutdown(); base.OnDestroy(ref packet); }
void MainFrm_FormClosed(object sender, FormClosedEventArgs e) { if (_webView != null) { _webView.Dispose(); } }
public void BrowserRefCountDecrementedOnDispose() { var manualResetEvent = new ManualResetEvent(false); var browser = new ChromiumWebBrowser("https://google.com"); browser.LoadingStateChanged += (sender, e) => { if (!e.IsLoading) { manualResetEvent.Set(); } }; manualResetEvent.WaitOne(); //TODO: Refactor this so reference is injected into browser Assert.Equal(1, BrowserRefCounter.Instance.Count); browser.Dispose(); Assert.True(BrowserRefCounter.Instance.Count <= 1); Cef.WaitForBrowsersToClose(); Assert.Equal(0, BrowserRefCounter.Instance.Count); }
private void MainForm_FormClosed(object sender, FormClosedEventArgs e) { try { browser.CloseDevTools(); browser.GetBrowser().CloseBrowser(true); } catch { } try { if (browser != null) { browser.Dispose(); Cef.Shutdown(); } } catch { } //string name = System.Diagnostics.Process.GetCurrentProcess().ProcessName; //System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName(name); //foreach (System.Diagnostics.Process p in process) //{ // p.Kill(); //} }
private void Main_FormClosing(object sender, FormClosingEventArgs e) { Heartbeating = false; try { ChromeBrowserVideos.Dispose(); } catch (Exception ex) { } try { Cef.Shutdown(); } catch (Exception ex) { } try { Screen.QuitChrome().GetAwaiter().GetResult(); } catch (Exception ex) { } SaveAlerts().GetAwaiter().GetResult(); }
private void FrmMain_Load(object sender, EventArgs e) { _chromiumWebBrowser?.Dispose(); _cookies = new CookieManager( Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources", "Cef", "cookies"), true, null); var browserSettings = new BrowserSettings { WindowlessFrameRate = 60, Plugins = CefState.Enabled, WebGl = CefState.Enabled }; _chromiumWebBrowser = new ChromiumWebBrowser("https://darkorbit.com") { BrowserSettings = browserSettings, RequestContext = new RequestContext(new RequestContextHandler(_cookies)), RequestHandler = new RequestHandler(), MenuHandler = new ContextMenuHandler(), LifeSpanHandler = new LifeSpanHandler() }; _chromiumWebBrowser.AddressChanged += ChromiumWebBrowserOnAddressChanged; _chromiumWebBrowser.IsBrowserInitializedChanged += ChromiumWebBrowserOnIsBrowserInitializedChanged; _chromiumWebBrowser.HandleCreated += ChromiumWebBrowserOnHandleCreated; Controls.Add(_chromiumWebBrowser); SetDoubleBuffering(_chromiumWebBrowser, true); _pipeThread = new Thread(CreateTcpServer); _pipeThread.Start(); }
private void MainForm_FormClosing(object sender, FormClosingEventArgs e) { // 窗体关闭时退出CEF browser.Dispose(); browser = null; Cef.Shutdown(); }
private void FrmMain_Load(object sender, EventArgs e) { _chromiumWebBrowser?.Dispose(); _cookies = new CookieManager( Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources", "Cef", "cookies"), true, null); var browserSettings = new BrowserSettings { WindowlessFrameRate = 60, Plugins = CefState.Enabled, WebGl = CefState.Enabled, }; _chromiumWebBrowser = new ChromiumWebBrowser("https://darkorbit.com", browserSettings, new RequestContext(new RequestContextHandler(_cookies))) { Size = pbBrowser.Size, RequestHandler = new RequestHandler(), MenuHandler = new ContextMenuHandler() }; _renderHandler = new RenderHandler(_chromiumWebBrowser); _renderHandler.BrowserPaint += RenderHandlerOnBrowserPaint; _chromiumWebBrowser.RenderHandler = _renderHandler; _chromiumWebBrowser.AddressChanged += ChromiumWebBrowserOnAddressChanged; _pipeThread = new Thread(CreatePipeConnection); _pipeThread.Start(); }
private void web_view_FormClosing(object sender, FormClosingEventArgs e) { this.pnlBrowser.Controls.Remove(browser); browser.Dispose(); browser = null; Thread.Sleep(200); //Prevent browser close freezing }
public void InitializeChromium(string homeUri) { CefSettings settings = new CefSettings(); settings.CachePath = Path.Combine(Path.GetDirectoryName(Process.GetCurrentProcess().MainModule.FileName), "cache"); Cef.EnableHighDPISupport(); // Initialize cef with the provided settings Cef.Initialize(settings); // Create a browser component _browser = new ChromiumWebBrowser(homeUri); // Add it to the form and fill it to the form window. this.Controls.Add(_browser); _browser.Dock = DockStyle.Fill; Closing += (sender, e) => { _browser.Dispose(); Cef.Shutdown(); }; toolStripContainer.ContentPanel.Controls.Add(_browser); _browser.LoadingStateChanged += OnLoadingStateChanged; _browser.ConsoleMessage += OnBrowserConsoleMessage; _browser.StatusMessage += OnBrowserStatusMessage; _browser.TitleChanged += OnBrowserTitleChanged; _browser.AddressChanged += OnBrowserAddressChanged; _browser.RequestHandler = new RequestHandler(this); var bitness = Environment.Is64BitProcess ? "x64" : "x86"; var version = string.Format("Chromium: {0}, CEF: {1}, CefSharp: {2}, Environment: {3}", Cef.ChromiumVersion, Cef.CefVersion, Cef.CefSharpVersion, bitness); DisplayOutput(version); }
public void Dispose() { if (!_browser.IsDisposed) { _browser.Dispose(); } }
private void MainWindow_FormClosing(object sender, FormClosingEventArgs e) { // Dispose of the browser window. browser.Dispose(); // Shutdown the embedded framework Cef.Shutdown(); }
private FormGuide(string url, Form owner) { InitializeComponent(); Text = Program.BrandName + " Guide"; Size = new Size(owner.Size.Width * 3 / 4, owner.Size.Height * 3 / 4); VisibleChanged += (sender, args) => this.MoveToCenter(owner); browser = new ChromiumWebBrowser(url) { KeyboardHandler = new CustomKeyboardHandler(null) }; browser.BrowserSettings.BackgroundColor = (uint)BackColor.ToArgb(); var browserComponent = new CefBrowserComponent(browser); var browserImpl = new BaseBrowser(browserComponent); BrowserUtils.SetupDockOnLoad(browserComponent, browser); Controls.Add(browser); Disposed += (sender, args) => { browserImpl.Dispose(); browser.Dispose(); }; }
private void MainForm_FormClosing(object sender, FormClosingEventArgs e) { // ask user if they are sure if (DownloadsInProgress()) { if (MessageBox.Show("Downloads are in progress. Cancel those and exit?", "Confirm exit", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) { e.Cancel = true; foreach (var thread in threads) { Thread.CurrentThread.Abort(thread); } return; } } // dispose all browsers try { foreach (TabPage tab in TabPages.Items) { ChromiumWebBrowser browser = (ChromiumWebBrowser)tab.Controls[0]; browser.Dispose(); } } catch (System.Exception ex) { //Add Logging? } }
/// <summary> /// Dispose of this text item /// </summary> /// <param name="disposing"></param> protected override void Dispose(bool disposing) { Debug.WriteLine("Disposing of " + _filePath, "CefWebMedia - Dispose"); if (disposing) { // Remove the webbrowser control try { // Remove the web browser control Controls.Remove(_webBrowser); // Workaround to remove COM object PerformLayout(); // Detatch event and remove if (_webBrowser != null && !_disposed) { //_webBrowser.LoadingStateChanged -= OnLoadingStateChanged; _webBrowser.Load("about:blank"); _webBrowser.Dispose(); _disposed = true; } } catch (Exception e) { Trace.WriteLine(new LogMessage("CefWebMedia - Dispose", "Cannot dispose of web browser. E = " + e.Message), LogType.Info.ToString()); } } base.Dispose(disposing); }
public void Dispose() { _ChromiumWebBrowser.Dispose(); _PackPackUriResourceHandlers.Clear(); _DebugCfxClient = null; _DebugCfxLifeSpanHandler = null; }
private void ClientContainer_FormClosing(object sender, FormClosingEventArgs e) { CefSharpSettings.WcfTimeout = TimeSpan.Zero; browser.Dispose(); Controls.Remove(browser); Cef.Shutdown(); }
protected void Dispose(bool disposing) { if (!disposing) { return; } if (observer != null) { observer.Dispose(); } observer = null; if (this.dynamoWindow != null) { dynamoWindow.StateChanged -= DynamoWindowStateChanged; dynamoWindow.SizeChanged -= DynamoWindow_SizeChanged; dynamoWindow = null; } if (this.browser != null) { browser.SizeChanged -= Browser_SizeChanged; browser.LoadError -= Browser_LoadError; browser.Dispose(); browser = null; } }
public void Dispose() { if (!_chromiumBrowser.IsDisposed) { _chromiumBrowser.Dispose(); } }
/// <summary> /// 清除组件内部资源 /// </summary> /// <param name="layout"></param> /// <param name="SourcePath"></param> /// <param name="Region"></param> public static UIElement DisposeResource(this UIElement uIElement) { uIElement.Dispatcher.Invoke(new Action(() => { if (uIElement is MediaControl) { MediaControl mediaControl = uIElement as MediaControl; if (mediaControl != null) { mediaControl.Dispose(); mediaControl = null; } } else if (uIElement is Image) { Image image = uIElement as Image; if (image != null) { image = null; } } else if (uIElement is ChromiumWebBrowser) { ChromiumWebBrowser chromiumWebBrowser = uIElement as ChromiumWebBrowser; if (chromiumWebBrowser != null) { chromiumWebBrowser.Dispose(); } chromiumWebBrowser = null; } })); return(uIElement); }
protected override void OnClosing(CancelEventArgs e) { browser.Dispose(); //browser = null; //Cef.Shutdown(); base.OnClosing(e); }
public virtual void Dispose() { _cefBrowser?.Dispose(); _cefBrowser = null; _queue.Dispose(); _queue = null; }
protected override void OnDeactivate(bool close) { timer.Stop(); try { if (_internetAccessBrowser != null) { _internetAccessBrowser.Dispose(); } } catch { } base.OnDeactivate(close); }
private void Form1_FormClosing(object sender, FormClosingEventArgs e) { if (!loading) { Settings.Default.lastSessionMediaURL = axWindowsMediaPlayer.URL; Settings.Default.LastSessionTime = axWindowsMediaPlayer.Ctlcontrols.currentPosition; Settings.Default.LastSessionVolume = VolumeTrackBar.Value; Settings.Default.LastSessionFolder = folderPath; Settings.Default.Shuffle = shuffle; Settings.Default.ResizeForMedia = ResizeForMediaCheckBox.Checked; Settings.Default.ShowRemainingTimeInElapsed = showRemainingTimeInElapsed; Settings.Default.LastSessionTheme = currentTheme; Settings.Default.ChangePanelWhenMediaIsSelected = ChangePanelWhenMediaIsSelectedCheckBox.Checked; Settings.Default.ClearFilterWhenMediaIsSelected = ClearFilterWhenMediaIsSelectedCheckBox.Checked; Settings.Default.CheckMediaIndexWithSongQueue = CheckMediaIndexWithSongQueueCheckBox.Checked; //Settings.Default.Reset(); Settings.Default.Save(); //Settings.Default.Reload(); //Settings.Default.Upgrade(); } timer.Dispose(); progressBarBrush.Dispose(); WebBrowser.LoadUrl("www.google.com"); WebBrowser.Dispose(); }
private FormGuide(string url, FormBrowser owner) { InitializeComponent(); Text = Program.BrandName + " Guide"; Size = new Size(owner.Size.Width * 3 / 4, owner.Size.Height * 3 / 4); VisibleChanged += (sender, args) => this.MoveToCenter(owner); var resourceRequestHandler = new ResourceRequestHandlerBase(); resourceRequestHandler.ResourceHandlers.Register(DummyPage); this.browser = new ChromiumWebBrowser(url) { MenuHandler = new ContextMenuGuide(owner), JsDialogHandler = new JavaScriptDialogHandler(), KeyboardHandler = new KeyboardHandlerBase(), LifeSpanHandler = new LifeSpanHandler(), RequestHandler = new RequestHandlerBase(true), ResourceRequestHandlerFactory = resourceRequestHandler.SelfFactory }; browser.LoadingStateChanged += browser_LoadingStateChanged; browser.FrameLoadEnd += browser_FrameLoadEnd; browser.BrowserSettings.BackgroundColor = (uint)BackColor.ToArgb(); browser.Dock = DockStyle.None; browser.Location = ControlExtensions.InvisibleLocation; browser.SetupZoomEvents(); Controls.Add(browser); Disposed += (sender, args) => browser.Dispose(); }