/// <summary> /// this is done just once, to globally initialize CefSharp/CEF /// </summary> private void InitBrowser() { CefSettings settings = new CefSettings(); settings.RegisterScheme(new CefCustomScheme { SchemeName = "WebBrowserDemo", SchemeHandlerFactory = new SchemeHandlerFactory() }); settings.UserAgent = UserAgent; settings.IgnoreCertificateErrors = true; settings.CachePath = GetAppDir("Cache"); Cef.Initialize(settings); dHandler = new DownloadHandler(this); lHandler = new LifeSpanHandler(this); mHandler = new ContextMenuHandler(this); kHandler = new KeyboardHandler(this); rHandler = new RequestHandler(this); InitDownloads(); host = new HostHandler(this); AddNewBrowser(tabStrip1, HomepageURL); }
/// <summary> /// these hotkeys work when the user is focussed on the .NET form and its controls, /// AND when the user is focussed on the browser (CefSharp portion) /// </summary> private void InitHotkeys() { // browser hotkeys KeyboardHandler.AddHotKey(this, CloseActiveTab, Keys.W, true); KeyboardHandler.AddHotKey(this, CloseActiveTab, Keys.Escape, true); KeyboardHandler.AddHotKey(this, AddBlankWindow, Keys.N, true); KeyboardHandler.AddHotKey(this, AddBlankTab, Keys.T, true); KeyboardHandler.AddHotKey(this, RefreshActiveTab, Keys.F5); KeyboardHandler.AddHotKey(this, OpenDeveloperTools, Keys.F12); KeyboardHandler.AddHotKey(this, NextTab, Keys.Tab, true); KeyboardHandler.AddHotKey(this, PrevTab, Keys.Tab, true, true); // search hotkeys KeyboardHandler.AddHotKey(this, OpenSearch, Keys.F, true); KeyboardHandler.AddHotKey(this, CloseSearch, Keys.Escape); KeyboardHandler.AddHotKey(this, StopActiveTab, Keys.Escape); }